1. refがコピーされ、ビューが更新されますrefを使用してオブジェクトのプロパティ値をレスポンシブデータに変換する場合 レスポンシブ データを変更しても元のデータには影響しません。 同時にビューも更新されます。 Ref はコピーを意味します。コピーしても元のデータには影響しません。 <テンプレート> <div> <div> <div>{{stateObj} </div> <button @click="func1">ボタン</button> </div> </div> </テンプレート> <スクリプト> 'vue' から {ref} をインポートします エクスポートデフォルト{ 名前: 'アプリ'、 設定(){ let obj={name:"张三",age:22} // オブジェクト内のプロパティをレスポンシブ データに変換します // オブジェクトをレスポンシブ データに変換する代わりに let stateObj=ref(obj.name) 関数func1(){ stateObj.value="張三が李斯になる"; //元のデータは変更されていません。元のデータ obj {name: "张三", age: 22} console.log("元のデータ obj",obj) // レスポンシブデータが変更されました/** レスポンシブ stateObj RefImpl { _rawValue: "張三が李思になる", _shallow: false, __v_isRef: true、_value: "張三が李四になる" } **/ // ref オブジェクトになります console.log("responsive stateObj",stateObj) } {stateObj,func1} を返す }, } </スクリプト> 2. toRefは参照なので、ビューは更新されませんtoRefを使用してオブジェクトのプロパティをレスポンシブデータに変換する場合 レスポンシブデータを変更すると、元のデータに影響します データがtoRefを通じて作成された場合、値が変更された後、データはビューをトリガーしません。 toRefは参照です。前のオブジェクトのプロパティを参照します。 したがって、変更すると、元のデータの値に影響します。 <テンプレート> <div> <div> <div>{{状態}}</div> <button @click="func1">ボタン</button> </div> </div> </テンプレート> <スクリプト> 'vue' から { toRef } をインポートします エクスポートデフォルト{ 名前: 'アプリ'、 設定(){ let obj={name:"张三",age:22} // オブジェクト内のプロパティ名をレスポンシブ データに変換します // オブジェクトをレスポンシブ データに変換する代わりに let state=toRef(obj, 'name'); console.log('toRef',状態) 関数func1(){ state.value="私はLi Siです"; コンソールログ('obj',obj) console.log('状態',状態) } {state,func1} を返す }, } </スクリプト> 3. 結論ref コピー、レスポンシブ データの変更、以前のデータには影響しませんが、インターフェイスは変更されます。 toRef 参照の場合、レスポンシブ データを変更すると以前のデータに影響し、インターフェイスは更新されません。 toRefの使用例 レスポンシブデータを元のデータに関連付けたい場合。 レスポンシブデータを更新した後、ビューを更新したくない場合は、toRefを使用できます。 まとめ: refとtoRefの違い (1)refの本質はコピーであり、応答データの変更は元のデータに影響を与えない。toRefの本質は参照関係であり、応答データの変更は元のデータに影響を与える。 (2)refデータが変更されると、インターフェースは自動的に更新される。toRefデータが変更されると、インターフェースは自動的に更新されない。 (3) toRefに渡されるrefは異なります。toRefは2つのパラメータを受け取ります。最初のパラメータはどのオブジェクトか、2番目のパラメータはオブジェクトのどの属性かです。 要約するVue3 の ref と toRef の違いについての記事はこれで終わりです。Vue3 の ref と toRef の違いについてさらに詳しく知りたい方は、123WORDPRESS.COM の過去記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL 8.0.15 のインストールと設定のグラフィックチュートリアル
>>: CentOS7 では、MySQL8 のマスター スレーブ バックアップと毎日のスケジュールされたフル バックアップが有効になります (推奨)
ネットサーフィンをしていると、私の注意を引こうとする美しいグラフィックでいっぱいの Web サイトを...
1. コンセプトこれらはすべて Element の属性であり、要素の幅を示します。 Element....
以下のように表示されます。 SELECT count(DISTINCT(a.rect_id)) zc...
目次父から息子へ息子から父へクロスレベルコンポーネント(親から子孫)父から息子へpropsを通じて値...
Firefox の下位バージョンでは中国語の文字を入力できず、上位バージョンでは文字化けした文字が表...
この記事では、例を使用して、データベースを削除せずに MySQL 内のすべてのテーブルをすばやく削除...
目次0x0 はじめに0x1 RBAC 実装0x2 クレームベースの承認0x3 統合 CASL 0x4...
テーブルヘッダーでは、暗い境界線の色を個別に定義できます。基本的な構文<TH 境界線の色を暗く...
XHTML には似た機能を持つタグがいくつかあります。もちろん、ここでの類似性とは意味の類似性を指...
コードをコピーコードは次のとおりです。 <a href=# title="ここに表示...
前提: ストアド プロシージャは、毎日午後 10 時から午前 5 時まで 10 分ごとに実行されます...
メタ属性には、name と http-equiv の 2 つがあります。 name 属性は主に、We...
目次導入アイデアID配列インデックスのマッピング関係を確立するツリー構造の構築原理要約する導入組織階...
この記事では、参考までに、centOSにmysql5.7をインストールする詳細な手順を紹介します。具...
フォーム項目を動的に追加するiview の動的なフォーム追加は非常に簡単です。フォーム項目を配列に設...