redux-saga是react中解决异步最常用的中间件,它与redux-thunk相比,处理异步是接近纯函数的思维,只派发一个普通对象。
我们逐步拆解它的effects
1.delay
const delay = function (ms) {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(true)
}, ms)
})
}
2.take
/**
* 监听动作的执行
* @param {*} actionType
* @returns
*/
export function take(actionType) {
return {
type: 'TAKE',
actionType
}
}