运行 一系列 sagas 依次生效
Run an array of sagas effect sequentially
我正在尝试按顺序生成一系列传奇效果。
这个想法是 yield all([call(foo), call(bar])
将 运行 call(foo)
和 call(bar)
并行(或至少以伪并行方式)。
但是,我希望我的 sagas 按顺序 运行,这意味着我想等待 foo
结束,然后再启动 bar
(这样我可以取消该过程)。
这个调用数组是动态生成的,所以我可以硬写一系列yield
。在这种情况下正确的语法是什么?
redux-saga documentation 有一个排序传奇的例子。
如果您有一系列调用,只需在您的 saga 中生成这些调用即可。例如:
// Some array containing call objects
let calls = [...];
// Call each in order they are present in the array
for (let c of calls) {
yield c
}
我正在尝试按顺序生成一系列传奇效果。
这个想法是 yield all([call(foo), call(bar])
将 运行 call(foo)
和 call(bar)
并行(或至少以伪并行方式)。
但是,我希望我的 sagas 按顺序 运行,这意味着我想等待 foo
结束,然后再启动 bar
(这样我可以取消该过程)。
这个调用数组是动态生成的,所以我可以硬写一系列yield
。在这种情况下正确的语法是什么?
redux-saga documentation 有一个排序传奇的例子。
如果您有一系列调用,只需在您的 saga 中生成这些调用即可。例如:
// Some array containing call objects
let calls = [...];
// Call each in order they are present in the array
for (let c of calls) {
yield c
}