[解決済み] reduxでthis.setState()は絶対使うべき?
2022-05-15 10:06:12
質問
あなたは今まで
this.setState()
を使うべきでしょうか?それとも常にアクションをディスパッチし、propsに依存すべきでしょうか?
どのように解決するのですか?
の明確な使用方法
setState
は、ローカルな表示状態を持つが、グローバルなアプリケーションには関係ない UI コンポーネントのために使用されます。たとえば、特定のドロップダウン メニューがアクティブに表示されているかどうかを表すブール値は、グローバルな状態である必要はないため、メニュー コンポーネントの状態によってより便利に制御されます。
他の例としては、階層のアコーディオン表示における行の折りたたみ/展開の状態があるかもしれません。または、タブ ナビゲーションで現在選択されているタブの場合もあります。しかし、これらの例の両方で、UI の状態をグローバルに処理することを選択することができます。たとえば、ページの更新によって保存されるように、ブラウザ ストレージに展開/折りたたみ状態を永続化したい場合、これは必要なことでしょう。
実際には、ローカルな状態でそのような UI 要素を実装し、必要に応じてそれらをグローバルな状態にリファクタリングすることが最も簡単です。
関連
-
[解決済み】React Propsが定義されていません。
-
[解決済み] error 'document' is not defined : eslint / React
-
[解決済み] React QueryとReduxの主な違いは何ですか?
-
[解決済み] Reduxの非同期フローになぜミドルウェアが必要なのか?
-
[解決済み] Reactのstateとpropsの違いとは?
-
[解決済み] Reduxストアの状態をリセットする方法とは?
-
[解決済み] ES6 ジェネレータで redux-saga を使用する利点/欠点と ES2017 async/await で redux-thunk を使用する利点/欠点
-
[解決済み] Reactで親の状態を更新するにはどうしたらいいですか?
-
[解決済み] mapDispatchToPropsとは何ですか?
-
[解決済み] ReduxのmapToDispatchToProps()の引数で「dispatch」が関数でない件
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Reactを使用したMapBoxのCSSが欠落している件
-
[解決済み】Warning.Itが表示されるのはなぜですか?Functions are not valid as a React child?
-
[解決済み] react-router-domを使用する際に「Function components cannot be given refs」を回避するにはどうすればよいですか?
-
[解決済み] react - createMuiThemeとcreateThemeの違い。
-
[解決済み] ReactJsのCreateClassは関数ではない
-
[解決済み] Uncaught (in promise) Error: リクエストに失敗、ステータスコード404
-
[解決済み] eslint: no-case-declaration - case ブロックで予期しない字句の宣言があった。
-
React はエラー TypeError を報告します。未定義のプロパティ 'XX' を読み取ることができない、問題は解決されました。
-
[解決済み] プロップ `history` は `Router` で必須とマークされているが、その値は `undefined` である。
-
[解決済み] Cross-envでyarnの実行時にenv変数が変更されない。