【发布时间】:2023-04-05 08:39:01
【问题描述】:
我有一个动作,我想用它来初始化我的应用程序,我想为这个动作创建一个史诗,然后在这个动作的后面触发多个其他动作,等待它们全部完成,然后再触发另一个动作。我查看了其他问题,它与one
非常相似我已经尝试过这种方法,但对我来说,它不起作用,它会触发 APP_INIT 操作,但随后无法触发序列中的任何其他操作。有人可以帮忙吗?
import { of } from 'rxjs';
import { mergeMap, zip, concat, mapTo } from 'rxjs/operators';
import { ofType } from 'redux-observable';
import { firstAction, secondAction } from 'actions';
export default function appInit (action$) {
return (
action$.pipe(
ofType('APP_INIT'),
mergeMap(() =>
concat(
of(firstAction()),
of(secondAction()),
zip(
action$.ofType('ACTION_ONE_COMPLETE'),
action$.ofType('ACTION_TWO_COMPLETE')
).mapTo(() => console.log('complete'))
)
)
)
);
}
【问题讨论】:
-
你说
INIT动作,但在你的例子中你有APP_INIT -
只是一个错字,我会更新。
APP_INIT动作正在触发,我可以在 Redux 开发工具中看到这一点,但在那之后它什么也没做
标签: javascript redux rxjs rxjs6 redux-observable