私はReactJSフレームワークを学んでいます。私は以下の面では明確ではない。 ユーザーがフォームセルに値を入力すると、実際のDOMで変更されますか? Virtual DOMで直接更新するだけですか?ReactJSコンポーネントでは、ユーザーがセルの値を変更すると、実際のDOMまたは仮想DOMで変更されますか?
ありがとうございました。
私はReactJSフレームワークを学んでいます。私は以下の面では明確ではない。 ユーザーがフォームセルに値を入力すると、実際のDOMで変更されますか? Virtual DOMで直接更新するだけですか?ReactJSコンポーネントでは、ユーザーがセルの値を変更すると、実際のDOMまたは仮想DOMで変更されますか?
ありがとうございました。
リアクションには一方向バインディングがありません。つまり、状態を変更すると(this.setState({...})
を使用)、render()
が再び呼び出されます。これにより仮想DOMが更新され、実際のDOMが更新されます。ユーザーが入力を入力した場合、セットアップ何かが(onChange()
を追加する、など)、ユーザーの入力の状態を変更する場合を除き
は、何も起こりません。 onChange
関数は、新しい値で状態を更新する必要があります。
フォームのセルに値を入力し、その入力フィールドには入力ハンドラがありません。実際のDOMは、セルに値を入力するときに変更され、その値はフォームセルに保持されます。
しかし、私たちは通常これをしません。新しい値を取り、render
メソッドを使用して入力セルをレンダリングするコンポーネントには、onChange
ハンドラがあります。レンダリングが呼び出された後、仮想DOMが最初に更新され、実際のDOMを更新する必要があるかどうかを調べるために、diffingの魔法が反応します。