Javascript 角度NgRx-当其他操作返回值时,从生效状态分派操作
我在调度需要其他五个操作(在我的效果中列出)结果的操作时遇到问题 有人能帮我吗?总而言之,我需要在这五个操作返回一个值后,在内部有效地分派一个操作 下面是我想调用的代码getProject():Javascript 角度NgRx-当其他操作返回值时,从生效状态分派操作,javascript,angular,typescript,redux,ngrx,Javascript,Angular,Typescript,Redux,Ngrx,我在调度需要其他五个操作(在我的效果中列出)结果的操作时遇到问题 有人能帮我吗?总而言之,我需要在这五个操作返回一个值后,在内部有效地分派一个操作 下面是我想调用的代码getProject(): getProjectRefData$ = createEffect(() => this.actions$.pipe( ofType(GetProjectRefData), mergeMap(() => of( Ge
getProjectRefData$ = createEffect(() =>
this.actions$.pipe(
ofType(GetProjectRefData),
mergeMap(() =>
of(
GetProjectSubTypes(),
GetAccountCategories(),
GetProductions(),
GetCompetitions(),
GetCompetitionEditions()
)
)
)
);
下面是这五个动作(或者说,它们所触发的效果)的蓝图示例:
转到
forkJoin
:
getProjectRefData$ = createEffect(() =>
this.actions$.pipe(
ofType(GetProjectRefData),
switchMap(action =>
forkJoin(
GetProjectSubTypes(),
GetAccountCategories(),
GetProductions(),
GetCompetitions(),
GetCompetitionEditions()
)
),
map(([projectSubtypes, accountCategories, productions, competitions, competitionEndings]) => this.someService.get('pass args here'),
map(callResult => SomeAction(callResult))
)
);
forkJoin
将在所有内部观察完成后以数组形式发出组合值。转到forkJoin
:
getProjectRefData$ = createEffect(() =>
this.actions$.pipe(
ofType(GetProjectRefData),
switchMap(action =>
forkJoin(
GetProjectSubTypes(),
GetAccountCategories(),
GetProductions(),
GetCompetitions(),
GetCompetitionEditions()
)
),
map(([projectSubtypes, accountCategories, productions, competitions, competitionEndings]) => this.someService.get('pass args here'),
map(callResult => SomeAction(callResult))
)
);
forkJoin
在所有内部观测完成后,将以数组的形式发出一个组合值。您要调用的getProject在哪里?您要调用的getProject在哪里?谢谢您的回答。我觉得我们很接近了-但我仍然不确定在完成这五个操作后在何处/如何调用getProjects()?我已经修改了答案以符合您的要求感谢答案。我觉得我们很接近了——但我仍然不确定在完成这五个操作后在哪里/如何调用getProjects()?我已经修改了答案以满足您的要求