検索
ホームページphp教程PHP开发Angular と Vue の間の双方向データ バインディングの実装原理 (vue の双方向バインディングに焦点を当てています)

高度な JavaScript プログラミングに関するメモを整理しているときに、オブジェクト指向の設計に関する章を見つけました。通常使用する JS オブジェクトの 90% 以上がデータ属性とアクセサー属性に分かれていると記載されていました。データ属性; データ属性とアクセサー属性について常に説明します。

データ属性: データ値の場所が含まれており、値を読み書きできます。

アクセサー属性: データは含まれません。値には、ゲッター関数とセッター関数のペアが含まれます。アクセサー プロパティを読み取るときは、有効な値を返す役割を担うゲッター関数が呼び出され、新しい値が渡されます。

ここでの紹介の焦点はアクセサー プロパティです。オブジェクトのアクセサー プロパティを設定するには、es5 の Object.defineProrerty() メソッドのみを使用できます。 .year=2005 が実行されると、実際に実行されます。book.year を実行すると、year の get メソッドが実行されます。

この原則が原則です。 vue の双方向データ バインディングでは、vue コンポーネント内にいます。属性データを宣言するとき、オブジェクトは実際にこの属性をアクセサー属性にカプセル化しています。

Angular と Vue の間の双方向データ バインディングの実装原理 (vue の双方向バインディングに焦点を当てています)

各属性には get メソッドと set メソッドがあり、双方向データの制御があります。は get および set メソッド内にあります。これは、準備ができている (2.0 でマウントされている) か、ビュー内の値を変更しているかに関係なく、set メソッドがトリガーされ、新しい値がそこにコピーされ、ビュー内の値と再度照合されるためです。もちろん、get メソッドを使用すると、取得した属性値を常に最新の値に保存できます。簡単に言うと、新しい値が取得されたかどうかを監視します。この方法にはタイミングが必要です。監視した結果、HTML5 ソケットをバックグラウンド アクティブ メッセージ プッシュ フロント エンドとして使用した場合と、フロント エンドとして使用した場合のパフォーマンスの違いのような気がします。 JS タイマーを使用してバックグラウンドにリクエストを送信し、5 秒ごとにメッセージをキャプチャします

Angular と Vue の間の双方向データ バインディングの実装原理 (vue の双方向バインディングに焦点を当てています)Vue のデータ層は実際には単なる装飾であると常に考えていましたが、API が計算された属性を検出した後、データ層は関数を完全に実装できます。 Ajax を送信して番号を取得する必要はありません。これは準備完了 (2.0 がマウントされています) であり、データのフォーマットまたはページの動的効果の制御のみを行うことができます。この JS の構造はバックグラウンド MVC と同じくらい明確で階層的です。これは私が突然思いついたアイデアであり、vue を使用している友人にアイデアを提供するためのものです。

var book={
_year:2004,
edition:1
};
Object.defineProperty(book,"year",{
get:function () {
return this._year
},
set:function (newValue) {
if(newValue>2004){
this._year=newValue;
this.edition+=newValue-2004;
}
}
});
book.year=2005;
alert(book.edition);//2
console.log(book.year);//2005

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、