リセットしたい概念的にステートフルな反応コンポーネントが時々あります。理想的な動作は、古いコンポーネントを削除し、新しい元のコンポーネントを再読み込みすることと同じです。
React はsetState
、コンポーネント自体の明示的な状態を設定できるメソッドを提供しますが、ブラウザーのフォーカスやフォームの状態などの暗黙的な状態を除外し、その子の状態も除外します。その間接的な状態をすべて把握するのは難しい作業になる可能性があります。新しい驚くべき状態ごとにモグラたたきをするよりも、厳密かつ完全に解決することをお勧めします。
これを行うための API またはパターンはありますか?
編集:this.replaceState(this.getInitialState())
アプローチを示し、アプローチと対比 する簡単な例を作成しましたthis.setState(this.getInitialState())
: jsfiddle -replaceState
より堅牢です。