インターネット上の this.$set の説明はわかりにくいと感じます。単一データ、オブジェクト、配列、json データのバインディングについてまとめます。 では、早速コードを見てみましょう。 <テンプレート> <div> <!-- 単一データ --> <button @click="text0a">テキスト0</button> <p>テキスト0: {{text0}}</p> <!-- オブジェクト --> <button @click="textObja">テキストオブジェクト</button> <p>textObj.text1: {{textObj.text1}}</p> <!-- 配列 --> <button @click="textArra">テキストArr</button> <p>テキストArr[1]: {{テキストArr[1]}}</p> <!-- json データ --> <button @click="textJsona">テキストJson</button> <p>textJson[1].t5: {{textJson[1].t5}}</p> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ() { 戻る { テキスト0: ''、 テキストオブジェクト: {}, テキスト配列: [], テキストJson:[ {t0: ''}, {t4: ''}, {t7: ''}, ] } }, メソッド: { テキスト0a: 関数() { vm = this とします text100 = 'efghjk' とします vm.$set(vm,'テキスト0',テキスト100) //vm.$set(vm,'text0','efghjk') と同等 }, テキストオブジェクト: 関数 () { vm = this とします textObj100 = {とする テキスト1: '123', テキスト2: '456' } vm.$set(vm.textObj,'text1',textObj100.text1) //これはvm.$set(vm,'textObj',textObj100)と同等です }, テキストArra: 関数() { vm = this とします textArr200 = ['a1','a2','a3'] とします。 vm.$set(vm,'textArr',textArr200) }, テキストJSONA: 関数() { vm = this とします textJson300 = [ とします。 {t1: 't1'、t2: 't2'、t3: 't3'}, {t4: 't4'、t5: 't5'、t6: 't6'}、 {t7: 't7'、t8: 't8'、t9: 't9'}, ] vm.$set(vm.textJson[1],'t5',textJson300[1].t5) //これは vm.$set(vm,'textJson',textJson300) と同等です } } } </スクリプト> <スタイル> </スタイル> 補足: Vue は $set を使用してデータの属性を動的に設定します 実際の開発プロセスでは、モデルをフォーム要素にバインドするときに、バインドされた要素の属性がバックグラウンド データに基づいて動的に生成されます。従来の割り当て方法を使用すると、ビューを更新することはできません 使用する必要がある this.$set(データ名、キー名、キー値) エクスポートデフォルト{ データ:{ //まず空のオブジェクトformObjectを定義します:{}, 配列リスト:[], }, マウント() { この.initPage() }, 方法:{ initPage(){ this.$store.dispatch(namespace/callData).then(res=>{ // データのキーと値を設定する res.data.forEach(item=>{ // ❗❗❗❗❗ this.formObject[item.name] = item.value // ❗❗❗❗ このメソッドはビューを更新できません this.$set(this.formObject, item.name, item.value) // ✅✅✅✅ビューを更新できます}) }) // 配列を変更します this.$store.dispatch(namespace/callData).then(res=>{ // データのキーと値を設定する this.$set(this.arrayList,0,(res.data)[0].id) ✅✅✅✅ビューを更新できます}) } } } 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
<<: MySQL の nvl() 関数に似た ifnull() 関数についての簡単な説明
>>: MySQL フルテキスト検索の中国語ソリューションとサンプルコード
目次1. 怠惰な2.トリム3.番号4.停止5. キャプチャ6.自分7.一度8.予防する9.ネイティブ...
問題の説明MySQL の起動時にエラーが報告されます。エラー ログを確認してください。 [エラー] ...
Ⅰ. 問題の説明: CSS を使用して画像の 3D 凸凹効果を実現します。 Ⅱ実施手順は以下のとお...
CSS の適用範囲はグローバルです。プロジェクトがどんどん大きくなり、参加する人が増えるにつれて、命...
目次概要1. スタックとヒープ2. 変数オブジェクトと基本データ型3. 参照データ型とヒープメモリメ...
序文:親コンポーネントと子コンポーネント間でデータを渡す場合、通常は props と emittin...
1. はじめにイメージマップを使用すると、画像の領域をホットスポットとして指定できます。この領域にマ...
ページに複数の画像を導入すると、画像のサイズがばらつくことがあります。しかし、それらを一貫したサイズ...
序文起源は質問 1 です: umask が 022 に設定されている場合、作成するファイルのデフォル...
1. Apacheをインストールする $ sudo apt update && su...
1. 需要3 つのテーブルがあります。一定期間にわたるさまざまな抗生物質感受性の結果、つまり rep...
通常のプロジェクト開発中に、MySQL バージョンが 5.6 から 5.7 にアップグレードされた場...
目次1. プロトタイプモード例1例2例3 2. オブザーバーパターン1. プロトタイプモードプロトタ...
自社製品にクリック後1~2秒待機時間があるボタン(確認メールを送信する)があるため、クリック後の1~...
ブラウザの互換性はどんどん良くなってきています。モバイル端末は基本的にすべてWebKitベースです。...