我是一名后端开发人员,从我正在从事的项目的前端开发开始。前端使用 Angular7 和 NgRx。在过去的 4 天里,我学习了很多东西,但这是我一直坚持的事情,希望能得到您的帮助。
我了解到,我们可以通过返回一个具有多个操作的 Observable 数组来从 NgRx 中的一个效果中分派多个操作。我想根据条件调度数组中的一个动作。
我的代码看起来像这样
@Effect()
something$: Observable<Action> = this.actions$.pipe(
ofType(ActionType),
switchMap.(action: any) => {
return service.call(action.payload)
.pipe(
switchMap((data: ReturnType) => [
new Action1(),
new Action2(),
]),
catchError(error handling)
);
}),
);
我想实现这样的目标
@Effect()
something$: Observable<Action> = this.actions$.pipe(
ofType(ActionType),
switchMap.(action: any) => {
return service.call(action.payload)
.pipe(
switchMap((data: ReturnType) => [
if(condition)
new Action1()
else
new Action1.1() ,
new Action2(),
]),
catchError(error handling)
);
}),
);
我认为这是我对 RxJs 的了解不足,这使我无法实施该条件。