Heim  >  Artikel  >  Web-Frontend  >  Welche Methoden gibt es, um der Erkennungssequenz in Vue neue Eigenschaften eines Objekts hinzuzufügen?

Welche Methoden gibt es, um der Erkennungssequenz in Vue neue Eigenschaften eines Objekts hinzuzufügen?

亚连
亚连Original
2018-06-04 16:38:111708Durchsuche

Im Folgenden werde ich Ihnen eine Methode zum Hinzufügen neuer Attribute eines Objekts zur Erkennungssequenz in Vue vorstellen. Sie hat einen guten Referenzwert und ich hoffe, dass sie für alle hilfreich ist.

Neue Attribute im Objekt zur Erkennungssequenz in Vue hinzufügen

deepCopy(o1, o2) { // 将o2的内容拷贝给data中的o1
   var key, i
   if (o2 instanceof Array) {
    for (i = 0; i < o2.length; i++) {
     if (o2[i] instanceof Array) {
      this.$set(o1, i, [])
      this.deepCopy(o1[i], o2[i])
     }
     else if (o2[i] instanceof Object) {
      this.$set(o1, i, {})
      this.deepCopy(o1[i], o2[i])
     }
     else {
      this.$set(o1, i, o2[i])
     }
    }
   }
   else if (o2 instanceof Object) {
    for (key in o2) {
     if (o2[key] instanceof Array) {
      this.$set(o1, key, [])
      this.deepCopy(o1[key], o2[key])
     }
     else if (o2[key] instanceof Object) {
      this.$set(o1, key, {})
      this.deepCopy(o1[key], o2[key])
     }
     else {
      this.$set(o1, key, o2[key])
     }
    }
   }
   else {
    o1 = o2
   }
}

Da Vue kein dynamisches Hinzufügen von responsiven Attributen auf Stammebene zulässt Daher müssen Sie das reaktive Attribut auf Stammebene vor der Initialisierung der Instanz deklarieren, auch wenn es nur ein Nullwert ist.

Wenn ein Attribut nicht im Voraus deklariert und später hinzugefügt wird, kann es die Änderung nicht erkennen Bei einigen festen Strukturen sind Änderungen erkennbar. Ich weiß zum Beispiel, dass ein Objekt die Attribute key1 und key2 haben muss, und ich kann sie im Voraus initialisieren. Ob diese Dinge dynamisch sind, kann ich im Voraus nicht sagen. Wenn Sie es später hinzufügen, kann Vue die Änderung nicht erkennen.

Übergeben Sie zu diesem Zeitpunkt einfach die Variable, die Sie in Daten deklariert haben, und den Wert, den Sie dieser Variablen zuweisen möchten, als Parameter an die Funktion

Das Obige ist, was ich für alle zusammengestellt habe. Ich hoffe, dass es in Zukunft für alle hilfreich sein wird.

Verwandte Artikel:

Wie kann das Problem gelöst werden, dass Vue keine Änderungen in Arrays oder Objekten erkennen kann?

So implementieren Sie Änderungen in Überwachungsobjekten und entsprechenden Werten in Vue

Überwachungsroutingänderungen und Überwachungsobjekte ansehen (ausführliches Tutorial)

Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es, um der Erkennungssequenz in Vue neue Eigenschaften eines Objekts hinzuzufügen?. 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