0Pricing
React Academy · レッスン

useStateの基礎と正しい更新

useStateの基礎と正しい更新(値を渡す更新と関数型更新)を学び、古い値の読み取りやバッチ更新を見分けます。

「useStateの基礎と正しい更新」はCoddyKit上の無料React Academyレッスンです。 これはレッスン1/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはReact Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 React Academyコースには全3レッスンが含まれています。

概要

目標:useStateの仕組みと、変更が前の値に依存する場合に正しく更新する方法を学びます。

  • stateの値とsetter
  • バッチ更新
  • 関数形式の更新

useStateを1分で理解する

useStateは配列を返します:[value, setValue]。setValueを呼び出すと再レンダーがスケジュールされます。Reactはパフォーマンス向上のため、複数の更新をバッチ処理する場合があります。

デモ:基本的なuseState

stateを作成し、クリック時に更新します。基本的なsetStateの流れを確認できます。


<div id="root"></div>

依存する更新には関数を使う

次のstateが前のstateに依存する場合は、バッチ更新中に古い値を読み取らないよう、関数形式の更新を使います。

  • setX(prev => prev + 1)
  • 複数回呼び出しても確実に動作します

デモ:複数回更新を正しく行う

1つのハンドラー内でsetterを何度も呼び出す場合は、正しい最終値を得るために関数形式の更新が必要です。


<div id="root"></div>

ヒントと注意点

ヒント:

  • count++のように変数を直接変更してReactが検知することを期待せず、必ずsetterを使います。
  • 次の値が前の値に依存する場合は、関数形式の更新を使います。
  • 複数のset呼び出しはバッチ処理される場合があります。

関数形式の更新の確認

次のstateが前のstateに依存する場合、ReactではどのようにsetStateを呼び出すべきですか?

まとめ

まとめ:useStateは値とsetterを提供し、Reactは更新をバッチ処理します。前の値に基づいて変更する場合は関数形式の更新を使います。

よくある質問

「useStateの基礎と正しい更新」レッスンは無料ですか?

はい。「useStateの基礎と正しい更新」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、React Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 React Academyコースには全3レッスンが含まれています。

「useStateの基礎と正しい更新」で何を学びますか?

useStateの基礎と正しい更新(値を渡す更新と関数型更新)を学び、古い値の読み取りやバッチ更新を見分けます。 ブラウザで直接実行するハンズオンコードでReact Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

React Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのReact Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/3です。

「useStateの基礎と正しい更新」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このReact Academyレッスンでコードを書いて実行できますか?

はい。すべてのReact Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. useStateの基礎と正しい更新
  2. イベント処理:onClickとonChange
  3. 制御コンポーネントと非制御入力(入門)
← React Academyに戻る