Too many re-renders
Reactコンポーネントが無限にレンダリングされる場合に発生するエラー
概要
Too many re-rendersは、Reactコンポーネントが無限ループでレンダリングされ続ける場合に発生します。通常、レンダリング中にstateを更新していることが原因です。
エラーメッセージ
Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.
原因
- レンダリング中にsetStateを直接呼び出し: 関数参照ではなく関数実行を渡している
- useEffectの依存配列が不適切: 毎回新しいオブジェクトが作られる
- イベントハンドラの誤り: onClickに関数の実行結果を渡している
解決策
1. イベントハンドラを関数参照に
| |
2. useEffectの依存配列を修正
| |
3. 条件付きでstateを更新
| |
JavaScript の他のエラー
この記事は役に立ちましたか?