如题
不支持,dva 基于 redux-saga,redux-saga 使用 Generator 使 effect 可测试,详细可以看一下这条答复
https://github.com/redux-saga/redux-saga/issues/987#issuecomment-301039792
我刚看了你发我的那条issue 说白了 redux-saga的作者太懒 不愿意改 哈哈
我也有次疑问,翻了下dva源码,effects对象中的函数
是提供给外部执行,是需要按照其规范定义的,外部需要定义为Generator
函数,而我们使用者不用关心外部执行,它会执行next()
,因此代码还是很清新的。
我刚看了你发我的那条issue 说白了 redux-saga的作者太懒 不愿意改 哈哈
搞笑,async,await 对异步的控制远远没有generator函数强大
不支持,dva 基于 redux-saga,redux-saga 使用 Generator 使 effect 可测试,详细可以看一下这条答复
这个issues没有讲为啥generator 是可测试的啊。@xiaosongxiaosong
用 async,await 就不能测试了么?(问题好久了。是不是没人讨论了)
@951565664
async,await 对异步的控制远远没有generator函数强大
BengBu-YueZhang 已经说到了这个问题的本质, 我对与 generator 的理解也不是很透彻,说一下自己一点浅薄的理解:
ECMAScript 6 入门 generator 一章 中有一下两段说明,对理解这个问题比较有用
yield表达式本身没有返回值,或者说总是返回undefined。next方法可以带一个参数,该参数就会被当作上一个yield表达式的返回值。
Generator 函数从暂停状态到恢复运行,它的上下文状态(context)是不变的。通过next方法的参数,就有办法在 Generator 函数开始运行之后,继续向函数体内部注入值。也就是说,可以在 Generator 函数运行的不同阶段,从外部向内部注入不同的值,从而调整函数行为。
说Generator
强大的,我只想吐槽goto
更强大,想跳哪里就哪里
我刚看了你发我的那条issue 说白了 redux-saga的作者太懒 不愿意改 哈哈
搞笑,async,await 对异步的控制远远没有generator函数强大
好像在说,JS语言远远没有C语言强大
Most helpful comment
说
Generator
强大的,我只想吐槽goto
更强大,想跳哪里就哪里