blog

双方向データバインディングを実装するいくつかの方法

ユーザがテキストを入力したり、ボタンをクリックしたりするなどの DOM イベント。 () を使用して、セッター、ゲッターをハイジャックし、データが変更されたときにサブスクライバにメッセージを発行し、対...

Jul 6, 2020 · 1 min. read
シェア

双方向データバインディングを実装するいくつかの方法

出版社-購読者モデル

ダーティバリューチェック

データハイジャック

vm.set('property', value) パブリッシャサブスクライバパターン:一般的にバインディングリスナーのデータとビューを達成するために、サブ、パブの方法を介して、通常の練習は、データの方法を更新することですこの方法は、今では低すぎるすべての後に、vm.propertyを介してデータを更新することを好む=値この方法では、同時に自動的にビューを更新するので、次の2つの方法があります。

ダーティバリューチェック:angular.jsは、ダーティバリューチェックによってデータが変更されたかどうかを比較することで、ビューを更新するかどうかを決定します。 最も単純な方法は、setInterval()タイマーポーリングによってデータの変更をチェックすることですが、もちろんGoogleはそれほど低くはないでしょう、angularは指定されたイベントがトリガーされたときにのみダーティバリューチェックに入ります。

  • ユーザーがテキストを入力したり、ボタンをクリックしたりするなどのDOMイベント。
  • XHRイベントへの応答
  • ブラウザの場所変更イベント
  • Timer
  • apply()

データ・ハイジャック: vue.jsは、Object.defineProperty()を使用して、パブリッシャ・サブスクライバ・パターンと組み合わせたデータ・ハイジャックを行い、対応するリスナー・コールバックによって引き起こされるサブスクライバへのデータ変更発行メッセージのセッターやゲッターをハイジャックします。

Read next

スプリングの基本

はい、派生クラスのインターフェイスは、派生インターフェイスの2種類を継承するだけでなく、リソースアクセス、イベント発行、国際化などに関連するインターフェイスを継承し、より機能豊富な、ユーザー指向。

Jul 5, 2020 · 2 min read