useStateで定義された状態変数が、追加/更新するプロパティを持つオブジェクトである場合、それを更新する方法はやや混乱します。
オブジェクトを更新するだけでは不十分です。そうしないと、コンポーネントが再レンダリングされません。
私が見つけたパターンには、1つのプロパティで一時オブジェクトを作成し、オブジェクトの破棄を使用して、既存の2つのオブジェクトから新しいオブジェクトを作成することが含まれます。
const [quizAnswers, setQuizAnswers] = useState({})
…
const updatedValue = {}
updatedValue[quizEntryIndex] = answerIndex
setQuizAnswers({
…quizAnswers,
…updatedValue
})
同じ手法を使用して、プロパティを削除できます。
const copyOfObject = { ...quizAnswers }
delete copyOfObject['propertyToRemove']
setQuizAnswers({
…copyOfObject
})
私の無料ダウンロードReactハンドブック
その他の反応チュートリアル:
- Reactの簡単なアプリの例:APIを介してGitHubユーザー情報を取得する
- Reactでシンプルなカウンターを構築する
- React開発用のVSCodeセットアップ
- Reactルーターを介して小道具を子コンポーネントに渡す方法
- ElectronとReactでアプリを作成する
- チュートリアル:Reactを使用してスプレッドシートを作成する
- Reactを学ぶためのロードマップ
- Reduxの使い方を学ぶ
- JSXの使用を開始する
- スタイル付きコンポーネント
- ReduxSagaの紹介
- Reactルーターの紹介
- Reactの紹介
- コンポーネントを反応させる
- 仮想DOM
- Reactイベント
- 反応状態
- 小道具に反応する
- Reactフラグメント
- React Context API
- PropTypesに反応する
- Reactの概念:宣言型
- React:クリック時に別のコンポーネントを表示する方法
- ReactJSX内でループする方法
- 小道具とReactの状態
- jQueryまたはReactを使用する必要がありますか?
- Reactを使用するために知っておく必要のあるJavaScriptの量はどれくらいですか?
- ギャツビー入門
- ReactでDOM要素を参照する方法
- Reactにおける一方向のデータフロー
- 高次コンポーネントに反応する
- Reactライフサイクルイベント
- Reactのコンセプト:不変性
- Reactのコンセプト:純度
- Reactフックの紹介
- create-react-appの紹介
- Reactのコンセプト:構成
- React:プレゼンテーションコンポーネントとコンテナコンポーネント
- Reactでのコード分割
- Reactを使用したサーバー側のレンダリング
- Reactのインストール方法
- ReactのCSS
- ReactでのSASSの使用
- Reactでのフォームの処理
- React StrictMode
- Reactポータル
- Reactレンダリングプロップ
- Reactコンポーネントのテスト
- Reactのイベントハンドラーにパラメーターを渡す方法
- Reactでエラーを処理する方法
- JSXで複数の要素を返す方法
- Reactでの条件付きレンダリング
- React、小道具を子コンポーネントに転送する方法
- Reactで入力要素の値を取得する方法
- useStateReactフックの使用方法
- useCallbackReactフックの使用方法
- useEffectReactフックの使用方法
- useMemoReactフックの使用方法
- useRefReactフックの使用方法
- useContextReactフックの使用方法
- useReducerReactフックの使用方法
- Reactアプリを同じオリジンのバックエンドに接続する方法
- リーチルーターチュートリアル
- React開発ツールの使用方法
- Reactを学ぶ方法
- Reactアプリケーションをデバッグする方法
- ReactでHTMLをレンダリングする方法
- `dangerouslySetInnerHTML`を修正する方法がReactのエラーと一致しませんでした
- Reactログインフォームの状態とブラウザの自動入力に関する問題を修正する方法
- ローカルホスト上のReactアプリでHTTPSを構成する方法
- Reactの「別のコンポーネントのレンダリング中にコンポーネントを更新できない」エラーを修正する方法
- 条件内でReactフックを使用できますか?
- オブジェクトでのuseStateの使用:更新方法
- ReactとTailwindを使用してコードのブロックを移動する方法
- React、DOMに追加されたときにReactでアイテムにフォーカスします
- 反応、ダブルクリックでテキストを編集