Peut-on attendre deux actions comme Promise.all? Exemple:Comment attendre 2 actions dans @ ngrx/effects
@Effect()
pulic addUser() {
return this.actions$.ofType(user.ADD)
.switchMap(() => {
return this.userService.add();
})
.map(() => {
return new user.AddSuccessAction();
});
}
@Effect()
pulic addUserOptions() {
return this.actions$.ofType(userOptions.ADD)
.switchMap(() => {
return this.userOptionsService.add();
})
.map(() => {
return new userOptions.AddSuccessAction();
});
}
@Effect()
public complete() {
return this.actions$.ofType(user.ADD_SUCCESS, userOptions.ADD_SUCCESS)
// how to make it works like Promise.all ?
.switchMap(() => {
return this.statisticService.add();
})
.map(() => {
return new account.CompleteAction();
});
}
À JOUR Ce que je veux obtenir un comportement simillar à Promise.all. Comment envoyer deux effets en parallèle, attendez que tous les effets soient résolus, puis envoyez une troisième action. Quelque chose comme https://redux-saga.js.org/docs/advanced/RunningTasksInParallel.html Avec des promesses, il était tout à fait obviouse:
Promise.all([fetch1, fetch2]).then(fetch3);
Est-il possible dans NGRX/effets? Ou est-ce un mauvais moyen dans ngrx/effets?
MISE À JOUR
Mettez une réponse ci-dessous.
Votre question est pas claire. Pouvez-vous fournir plus de détails? –