function* rootSaga() {
yield all(sagas.map(saga => fork(saga)));
}
sagaMiddleware.run(rootSaga);在上面的代码中,sagas是一个生成器函数数组,这些函数仍然按预期工作。我对复述传奇很陌生,所以我可能没有提供相关的信息,但我遵循了许多指南,这些指南都是这样说的,但我仍然收到了以下的信息:
[...effects] has been deprecated in favor of all([...effects]), please update your code我正在导入redux-saga函数
import { all, fork } from 'redux-saga/effects';这里有什么东西我遗漏了吗?一切都很好,但我收到了这个反对警告。
发布于 2018-08-30 16:44:57
看来你所拥有的应该能发挥作用。fork是一个效果,而all效果需要一个对象字典或一个效果数组。在较低的级别上,我非常肯定这意味着all效应在两种情况下都需要生成器。在redux- saga的初学者教程页上,他们的根传奇是这样组合在一起的:
function* helloSaga() {
console.log('Hello Sagas!')
}
function* watchIncrementAsync() {
yield takeEvery('INCREMENT_ASYNC', incrementAsync)
}
export default function* rootSaga() {
yield all([
helloSaga(),
watchIncrementAsync()
])
}这里要注意的是,在根佐贺数组中,helloSaga和watchIncrementAsync在适当的位置执行,每个数组都返回一个生成器。在您的示例中,您将返回一个fork,但这在本质上应该是相同的。我最好的猜测是,你的地图实际上没有返回一系列的效果。
https://stackoverflow.com/questions/52081380
复制相似问题