Heim  >  Artikel  >  Web-Frontend  >  Analyse von Änderungen in Vue-Erkennungsobjekten und -Arrays

Analyse von Änderungen in Vue-Erkennungsobjekten und -Arrays

不言
不言Original
2018-06-30 16:14:111488Durchsuche

Dieser Artikel teilt Ihnen die relevanten Wissenspunkte und Beispielcodes für Vue mit, um Änderungen in Objekten und Arrays zu erkennen. Freunde, die interessiert sind, können darauf verweisen.

In JavaScript sind Objekte und Arrays Referenztypen, die auf denselben Speicherbereich verweisen. Wenn prop ein Objekt oder Array ist, wirkt sich eine Änderung innerhalb der untergeordneten Komponente auf den Status der übergeordneten Komponente aus. Sie können Objekte oder Arrays direkt in Unterkomponenten ändern, es treten jedoch keine Änderungen auf, wenn sich die Daten ändern.

Objektänderungen erkennen

1. Das Hinzufügen oder Löschen von Objektattributen kann nicht erkannt werden

var vm = new Vue({
 data:{
   data111:{
     a = 1
   }
 }
})

data111.a = 2;//Dies kann zu Änderungen führen

Aber data111.b = 2; und vm.b = 2 können keine Änderungen erkennen

Erforderliche Verwendung

Vue.set(object, key, value)

wie

$set(data111, b, 2);

oder:

$set(key,value)

wie

vm.$set(‘b', 2);

zu Erkennen Sie Array-Änderungen

Änderungen können in den folgenden beiden Situationen nicht erkannt werden:

1 Legen Sie das Element direkt über den Index fest, z. B. arr[0]=12 ;

2. Ändern Sie direkt die Länge des Arrays, z. B. vm.arr.length

Vue.set( object, key, value )

Verwendung:

this.$set(this.arr,0,12)

Die Oben finden Sie den gesamten Inhalt dieses Artikels. Ich hoffe, dass er für alle hilfreich ist. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!

Verwandte Empfehlungen:

Analyse des Quellcodes der Vue-Datensteuerungsansicht

Einführung in die dynamische Festlegung von Routing-Parametern durch Vue

Das obige ist der detaillierte Inhalt vonAnalyse von Änderungen in Vue-Erkennungsobjekten und -Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn