Reactのpropsとstateの違い
Reactでは、コンポーネントのデータを扱う上で、propsとstateという2つの異なる概念があります。その違いは以下の通りです。
- プロパティ(属性):
- Propsはコンポーネントの属性で、親コンポーネントから子コンポーネントに渡されるデータです。
- Propsは読み取り専用で、子コンポーネントは自身のPropsを変更することはできず、親コンポーネントの変更によってのみ更新することができる。
- Propsとは、親コンポーネントから子コンポーネントへデータを一方通行に渡すことができる仕組みです。
- 状態
- Stateはコンポーネント内で管理される内部データです。
- Stateは可変であり、コンポーネントが自らのStateを変更することができます。
- Stateはコンポーネントの状態変化を記録するために使われる、Stateの変化でコンポーネントの再描画が行われる。
まとめると:
- Propsは子コンポーネントにデータを渡すのに使用され、読み取り専用で、単方向のデータフローです。
- コンポーネント内の可変データで、コンポーネントの状態の変化を記録するために使用されるものがStateです。