能否请您给我一个建议,如何等待多个Redux调度,然后执行一些操作?常见的情况是应用程序的初始化(例如,等待FETCH_SOMETHING_SUCCESS和FETCH_ELSE_SUCCESS,然后调度APP_INIT_SUCCESS)。
类似...
export const appInitSuccessEpic = (action$) =>
action$.pipe(
whenAllDispatched('FETCH_ONE', 'FETCH_SECOND'),
map(() => { type: 'APP_INIT_SUCCESS' })
)
谢谢:)
答案 0 :(得分:0)
您可以使用zip运算符。
所有可观测对象发出后,将值作为数组发出
import { ofType } from 'redux-observable';
export const appInitSuccessEpic = (action$) =>
zip(
action$.pipe(ofType("FETCH_THIS_SUCCESS")),
action$.pipe(ofType("FETCH_ELSE_SUCCESS"))
)
.pipe(mapTo({ type: 'APP_INIT_SUCCESS' }))