Promesses dans redux-saga
J'ai trouvé la même question ici, mais sans une bonne réponse, je suis à la recherche d'.
Je développe une application simple avec les opérations CRUD. Sur la page d'édition, après que le composant est monté (componentDidMount()
), l'application distribue une action pour récupérer un poste spécifique détails:
dispatch({ type: FETCH_POST, id: 'post-id' })
Je suis en utilisant redux-saga et souhaitez l'appel ci-dessus pour retourner une Promesse, afin que je puisse accéder à l'API de réponse.
Droit sans qu'un rappel/Promesse, j'ai fini avec la définition d'un nouvel état dans le magasin (comme post_edited
) et de connecter ou de l'associer à des accessoires dans le composant pour modifier la page.
Quelle serait la meilleure façon possible pour faire face à ce genre de situation?
OriginalL'auteur Ming Soon | 2017-02-17
Vous devez vous connecter pour publier un commentaire.
Pourriez-vous fournir plus d'informations à propos de votre question? Je ne suis pas sûr si je comprends votre question correctement, mais la pratique courante est:
API.js
postSaga.js
posts
. Alors devons-nous avoir deux états, l'un pour la listeposts
, et l'autre pour une même ressource, à éditer ou visualiserpost
? Est est la commune/les meilleures pratiques? En fait, je ne voulais pas ajouter un autre état pour un seulpost
.Ce code n'est pas de faire quelque chose avec l'état, c'est seulement l'origine des actions à être expédiés. Votre réducteur de code décide quoi faire avec les données extraites; il n'y a pas de réducteur de code ici. Si vous avez déjà un autre code qui récupère l'ensemble de la liste des messages, vous n'avez pas besoin de tout cela. Il vous suffit de créer un sélecteur de fonction dans votre réducteur (comme
getPostById(state, id)
) et de l'appeler dansmapStateToProps()
.OriginalL'auteur jukben