ホームページ  >  記事  >  ウェブフロントエンド  >  React には双方向バインディングがありますか?

React には双方向バインディングがありますか?

WBOY
WBOYオリジナル
2022-04-21 10:24:312715ブラウズ

react には双方向バインディングはありません。react の設計思想は一方向のデータ フローであり、双方向バインディングの概念はありません。react はビュー層であり、単一のデータ フローです。 props を介して親コンポーネントから子にのみ渡すことができます。コンポーネントはビューレイヤーレンダリングの要件を満たしており、テストと制御が容易であるため、react には双方向のバインディングがありません。

React には双方向バインディングがありますか?

このチュートリアルの動作環境: Windows 10 システム、react17.0.1 バージョン、Dell G3 コンピューター。

react には双方向バインディングがありますか

#react には双方向バインディングはありません

React の設計思想は一方向です双方向のデータ バインディングがない理由:

まず第一に、React は純粋な View レイヤーです;

それでは、要件は何ですかReact の双方向データ バインディングについて? -- 明らかに、これはビジネス要件です。一方向のデータ フローはすでに View レイヤーのレンダリングの要件を満たしており、(Props または State から) テストと制御が容易であるため、純粋な React ではなぜ双方向のデータ バインディングが必要なのでしょうか。

双方向データ バインディングの問題を解決する必要がある場合は、Ant Design の rc-form などのサードパーティ ライブラリを使用できます。ニーズに応じて、State または Redux に保存することもできます。

つまり、React に双方向データ バインディングがないのは、機能の欠如や競合の問題ではなく、React は純粋な問題、つまり View レイヤーの解決のみに重点を置いているということです。

一方向データ フロー

一方向データ フローとは、データ フローが props を介してのみ親コンポーネントから子コンポーネントに渡されることを意味します。子コンポーネントから親コンポーネントに渡すことはできません。コンポーネントはデータを渡します。データの双方向バインディングを実現するには、子コンポーネントは、親コンポーネントのデータを変更するために親コンポーネントの props によって渡されたメソッドを受け取ることしかできません。子コンポーネントのデータを親コンポーネントに直接渡します。

実際、react には双方向バインディングの概念がありません。ページと値を更新するたびに、指定された API を呼び出してそれをトリガーする必要があります。vue では、実装では、vue の命令は、実際にはいくつかのイベントの糖衣構文を使用して実装されます。

推奨される学習: 「

react ビデオ チュートリアル

以上がReact には双方向バインディングがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。