ホームページ >ウェブフロントエンド >jsチュートリアル >Redux Action Creators の状態アクセスが最適なのはどのような場合ですか?
Redux では、Action Creator 内のグローバル ストア状態へのアクセスは議論の余地のあるトピックになる可能性があります。ここでは、アクション作成者における状態アクセスの 2 つのアプローチを詳しく掘り下げ、それぞれの長所と短所を検討します。
import store from '../store'; export function someAction() { return { type: SOME_ACTION, items: store.getState().otherReducer.items, } }
このメソッドはストアを直接インポートし、ストアがストアであることに依存します。モジュールからエクスポートされたシングルトン。機能しますが、サーバー レンダリングの制限により、リクエストごとに個別のストアが必要になることが多いため、この方法はお勧めできません。
export function someAction() { return (dispatch, getState) => { const {items} = getState().otherReducer; dispatch(anotherAction(items)); } }
このアプローチでは、推奨される手法である Redux Thunk ミドルウェアを利用します。サンクを使用すると、アクション作成者はプレーンなアクション オブジェクトの代わりに関数をディスパッチできるようになり、dispatch 関数と getState 関数へのアクセスが提供されます。ミドルウェアが必要ですが、クライアント側とサーバー側の両方のレンダリングでシームレスに機能します。
最終的に、最適なアプローチは個々のアプリケーションの要件によって異なります。理想的には、アクションには最小限の情報が含まれる必要があります。ただし、必要に応じてアクション クリエーターで getState を使用することは許容されます。両方のアプローチの長所と短所を考慮し、プロジェクトに最も適した方を選択してください。
以上がRedux Action Creators の状態アクセスが最適なのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。