Je suis à la recherche de la manière de l'expédition de plusieurs redux actions dans une seule Épopée de l' redux-observable
middleware.
Supposons que j'ai suivantes Épique. A chaque fois que SEARCH
événement se produit, Épique charge les données à partir du backend et distribue RESULTS_LOADED
action.
searchEpic = (action$) =>
action$
.ofType('SEARCH')
.mergeMap(
Observable
.fromPromise(searchPromise)
.map((data) => {
return {
type: 'RESULTS_LOADED',
results: data
}
})
)
Maintenant, supposons que j'ai besoin de l'expédition des mesures supplémentaires lors de l' searchPromise
est résolu.
La façon la plus simple de le faire semble avoir une seconde épopée qui sera à l'écoute de RESULTS_LOADED
et expédition de la deuxième action. Comme suit:
resultsLoadedEpic = (action$) =>
action$
.ofType('RESULTS_LOADED')
.map(({results} => {
return {
type: 'MY_OTHER_ACTION',
results
}
})
Dans cet exemple simple, c'est assez facile. Mais quand les Épopées de grandir, j'ai tendance à trouver moi-même avoir beaucoup de redux actions dont le seul but est de déclencher d'autres actions. En outre, certains de rxjs code doit être répétée. Je trouve que c'est un peu moche.
Donc, ma question: Est-il un moyen de l'expédition de plusieurs redux actions dans une seule Epic?