老师,关于saga的问题

来源:6-9 Redux-saga中间件入门(2)

天河卢姥爷

2020-06-08

老师,generator函数需要执行不是需要使用next()来进行执行吗,为什么这里的话,不需要使用这个去执行呢。
还有就是

const res = yield axios.get('/list.json')

这段代码这里,yield不是没有返回值,或者说使用next()执行的时候会返回一个对象,里面有两个参数,一个value,一个done,为什么这里res可以直接接收到里面的value值。
还有就是在这里,res的值不是应该由第二次next()里面传递的参数决定的吗,为什么这里可以做直接的赋值,还有就是如果它第二次next()里面如果没有传参的话,这里有没有可能会返回undefinded的这种情况出现。

老师,这一块我不是很理解,所以问的比较多了( ▼-▼ ),主要是它跟我理解的generator好像不太一样,整体感觉更像是aysnc和await的感觉,先谢谢老师解惑( ▼-▼ )
先把这门课撸完,然后撸老师的测试课了。

写回答

1回答

Dell

2020-06-13

yield 会在底层自动的帮你封装一个next,当执行结束后,next会制动帮你执行的。

1
0

React零基础入门到实战,完成企业级项目简书网站开发

主流新技术 React-redux,React-router4,贯穿基础语法

5275 学习 · 2496 问题

查看课程