ボタンをクリックするとAPI呼び出しが行われ(setTimeoutによってシミュレートされます)、完了するとその項目は状態から削除されます。私はコンポーネントがレンダリングしようとしないことを期待しますが、必要な状態はもはや存在しないため、失敗して失敗します。Redux非同期ディスパッチによって接続コンポーネントのエラーが発生する
setTimeout(() => {
dispatch({
type: 'REMOVE',
id
});
}, 0);
Iは、親コンポーネントを想定:ディスパッチへの呼び出しを非同期的に行われるため
dispatch({
type: 'REMOVE',
id
});
The second fiddleはエラーを示します。ディスパッチの呼び出しが同期であるため、所望の挙動の動作を示す
The first fiddleその項目が配列から除外されているため、子コンポーネントをレンダリングしようとしなくなりました。状態からアイテムを削除し、コンポーネントが再レンダリングしようとするのを防ぐにはどうすればいいですか?
(http://stackoverflow.com/questions/40823843/component-is-not-unmount-after-its-delete-in-store)。 react-redux @にアップグレードすると問題が解決しました – NickL