Stateのリフトアップ:原則と例
共有stateを最も近い共通の祖先に移し、Propsで子へ渡します
「Stateのリフトアップ:原則と例」はCoddyKit上の無料React Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはReact Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 React Academyコースには全4レッスンが含まれています。
ようこそ
問題: 同期しない兄弟コンポーネント
共通の祖先を特定する
function Parent() {
const [value, setValue] = useState('');
return (
<>
<InputA value={value} onChange={setValue} />
<PreviewB value={value} />
</>
);
}カウンターをリフトアップする例
function App() {
const [count, setCount] = useState(0);
return (
<>
<CounterDisplay count={count} />
<CounterControl count={count} onIncrement={() => setCount(c => c + 1)} />
</>
);
}更新用のコールバックプロパティ
リフトアップ後の制御コンポーネントと非制御コンポーネント
複数階層にわたるリフトアップ
stateをリフトアップする利点
リフトアップしたstateから派生値を作る
const [items, setItems] = useState([]);
const filteredItems = items.filter(i => i.done); // derived, not separate stateリフトアップが過剰になる場合
確認問題
復習
次へ
よくある質問
「Stateのリフトアップ:原則と例」レッスンは無料ですか?
はい。「Stateのリフトアップ:原則と例」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、React Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 React Academyコースには全4レッスンが含まれています。
「Stateのリフトアップ:原則と例」で何を学びますか?
共有stateを最も近い共通の祖先に移し、Propsで子へ渡します ブラウザで直接実行するハンズオンコードでReact Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
React Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのReact Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「Stateのリフトアップ:原則と例」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このReact Academyレッスンでコードを書いて実行できますか?
はい。すべてのReact Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Stateのリフトアップ:原則と例
- Prop Drilling:問題になる場合と問題にならない場合
- 兄弟コンポーネント間の通信パターン
- 適切なStateの配置場所を選ぶ