Vue モニターのプロパティリスナープロパティとは何ですか?いわゆる監視とは、組み込みオブジェクトの状態やプロパティの変化を監視し、それに対応することです。プロパティを監視するということは、他のデータの変化を監視できることを意味します。 リスニングプロパティと計算プロパティの違いは何ですか?計算されたプロパティはキャッシュされ、依存する値が変更されると結果が再計算され、DOM が更新されます。 プロパティはプロパティ値を監視し、定義された値が変化すると、対応する関数が実行されます。 使用方法の主な違い: 計算プロパティは非同期タスクを実行できません。計算プロパティは通常、サーバーを要求したり、非同期タスクを実行したりするために使用されません。これは、これには長い時間がかかる可能性があり、計算プロパティはリアルタイムで更新する必要があるためです。したがって、この非同期タスクは、listening プロパティを使用して実行できます。 一言で言えば、コンピュータでできることは時計でもでき、コンピュータでできないことは時計でもできる。 監視プロパティの使用監視構成項目を使用して、監視するプロパティを構成項目に書き込みます。プロパティ値が変更されると、ハンドラー関数のコールバックがトリガーされます。計算されたプロパティの変更を監視することもできます。 例: 入力ボックスの変更を監視する コード <テンプレート> <div class="main"> 私: <el-input v-model="name" placeholder="お名前を入力してください"></el-input> 友達 1<el-input v-model="friends.friend_1" placeholder="名前を入力してください"></el-input> 友達 2<el-input v-model="friends.friend_2" placeholder="名前を入力してください"></el-input> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ(){ 戻る { 名前:「ロマンティック コーダー」 friends:{friend_1:'张三',friend_2:'李四'} } }, 時計:{ 名前:{ handler(newValue,oldValue){ //newValue 新しい値、oldValue 変更前の値 console.log(newValue,oldValue) this.friends.friend_1='王武' } }, // マルチレベル構造 'friends.friend_1' 内の特定の属性の変更を監視します:{ ハンドラー(新しい値、古い値){ console.log(新しい値、古い値) } }, '友達.友達_2':{ ハンドラー(新しい値、古い値){ console.log(新しい値、古い値) } }, } }; </スクリプト> ディープモニタリングオブジェクトが多層構造になっている場合、オブジェクトの多くのプロパティを監視する必要があり、各プロパティを個別に記述することを避ける必要があります。このとき、ディープ モニタリングが使用されます。 監視構成の監視プロパティ オブジェクトで deep を true に設定して、複数レベルのオブジェクトまたは配列内の値の変更を監視します。 時計:{ // マルチレベル構造内のすべての属性の変更を監視します friends:{ ハンドラー(新しい値、古い値){ console.log(新しい値、古い値、"aa") }, deep:true, // ディープモニタリングを有効にする} } 注意:ここで問題があります。ディープモニタリングが発生すると、新しい値と古い値は同じになりますか? 公式説明: オブジェクトまたは配列を変更する(置き換えるのではなく)場合、それらの参照は同じオブジェクト/配列を指しているため、古い値は新しい値と同一になります。 Vueは変更前の値のコピーを保持しません これによりポインタが変更されます。私の記事「JS のディープコピー方法を知っていますか?」では、データストレージについて説明しました。 今すぐお電話くださいディープ構成の場所と同じです。 現在のハンドラコールバックを直ちにトリガーするには、 時計:{ 名前:{ handler(newValue,oldValue){ //newValue 新しい値、oldValue 変更前の値 console.log(newValue,oldValue) this.friends.friend_1='王武' }, 即時:true }, } ページが読み込まれたときに一度実行されるため、古いデータは 要約するウォッチ リスニング プロパティは通常、データの永続化、イベントのディスパッチ、同期/非同期実行、形式の検証などに使用できます。 この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: CSS3 で背景ぼかしを実現する 3 つの方法 (要約)
テーブルに table-layer:fixed スタイルを設定し、テーブル内の行が結合されていること...
データシート /* Navicat SQLite データ転送 ソースサーバー: school ソース...
目次動的パーティクル効果は次のとおりです。プラグインをインストールする動的パーティクル効果は次のとお...
Vue におけるストアの最も単純な応用はグローバル ストレージです。ここでは、相互にジャンプするため...
昨日、VMware に CentOS7 をインストールしました。Tomcat パッケージを転送するた...
目次序文:詳しい紹介:練習する:要約する序文: Python、Java、Cシリーズなど、すべての主要...
mysql を構成するときに、構成ファイル内のデフォルトのストレージ エンジンを InnoDB に設...
ファイル内の文字列の数を数えることは、実際には砂の中の石を探すようなものです。ある人は、石を見た後に...
1. 重複行を見つける blog_user_relation a から * を選択 WHERE (...
会社のウェブサイトのアクセス数が増えてくると(1日10万PV以上)、当然MySQLがボトルネックにな...
transform:scale()比例したズームインまたはズームアウトを実現できます。 transi...
Mac で開発されたプロジェクトがあり、パッケージ npm i がインストールされており、すべて正常...
目次配列の紹介配列リテラル2次元配列要約する配列の紹介配列- Arrayもオブジェクトですこれは通常...
目次1. プロセスとスレッドの概念2. ブラウザの原則3. 同期と非同期4. 実行スタックとタスクキ...
目次1. ノード、ツリー、仮想DOM 2. 仮想DOM 2.1 データオブジェクトの詳細2.2 制約...