1
私は2つのプットをしなければなりません。レンダリングは両方とも互いに強く依存する。最初のputが2番目と同時に発生しなければならないことを意味します。現在、すべてのput
は、関連するコンポーネントの再レンダリングを引き起こします。同じ時間を意味する、store.subscribe
は、put
が起こるまでトリガしてはいけません。私はこれに対して特定のアクションを作成することができますが、バッチ処理の方法があるかどうかは疑問でした。私はput.resolve
を試してみましたが、また次バッチ・プット - すべてのプットが完了するまでstore.subscribeが更新されないようにしてください
yield all([
put(updateEntity(ENTITYS.COMMENT, id, comment)),
put(updateEntity(ENTITYS.STORY, storyId, entity => ({ commentIds:entity.commentIds.map(commentId => commentId === id ? comment.id : commentId) })))
]);
しかし、これはstore.subscribe
が各put
後にトリガされ、動作しませんでした。
「put.resolve」のようなものはありますか?私はちょっと待っていたあなたの返事にとても感謝しています。 – Noitidart
お世話になりました。ありがとうございました。私はreducex-batchアクションを試す前に 'redux-batch'(https://github.com/manaflair/redux-batch)を試してみるつもりです。 – Noitidart
私は後世のためにGithubの問題をリンクしています - https://github.com/redux-saga/redux-saga/issues/1161 –