Projektszenario:Auf der Seitenanzeige befindet sich ein <ul>-Tag. Wir müssen die Listendaten dynamisch anzeigen. Neben den Listenwerten müssen auf unserer Seite noch weitere Werte angezeigt werden. Daher ist die Datenstruktur der Listendaten ein Array unter einem Objekt. Nach der dynamischen Änderung der Daten wird festgestellt, dass sie nicht automatisch gerendert werden. Problembeschreibung: Wenn Sie auf die Schaltfläche „Klick mich!“ klicken, ändern sich die Daten und werden an die Konsole ausgegeben, die Listendaten werden jedoch nicht gerendert. <script src="https://unpkg.com/vue/dist/vue.js"></script> <div id="app"> <button @click="pushDataToDataList">klick mich!</button> <ul> <li v-for="(Element, i) in form.dataList" :key="Element"> {{ i + ":" + Artikel }} </li> </ul> </div> <Skript> let app = neues Vue({ Daten: Funktion() { zurückkehren { bilden: {} } }, Methoden: { pushDataToDataList() { wenn (diese.form.dataList == null) { dieses.Formular.Datenliste = [] } this.form.dataList.push("abc" + this.form.dataList.length) Konsole.log(dieses.Formular.Datenliste) } } }).$mount('#app') </Skript> Ursachenanalyse:Nach Durchsicht der offiziellen Dokumentation fanden wir die folgende Passage
Der Grund ist hier klar. Unsere Daten werden nicht gerendert, da zu Beginn im Formular unter Daten kein
Lösung: 1. Legen Sie im Formularobjekt unter „Daten“ Daten: Funktion() { zurückkehren { bilden: { Datenliste: null } } } 2. Verwenden Sie die Methode this.$set() pushDataToDataList() { wenn (diese.form.dataList == null) { // Legen Sie zuerst die dataList-Eigenschaft unter der Form this.$set(this.form, 'dataList', []) fest. } this.form.dataList.push("abc" + this.form.dataList.length) Konsole.log(dieses.Formular.Datenliste) } ReferenzlinksHinweise zur Erkennung von Datenänderungen durch Vue Dies ist das Ende dieses Artikels zur Lösung des Problems, dass Vue-gebundene Objekte und Array-Variablen nach Änderungen nicht gerendert werden können. Weitere verwandte Inhalte zum Problem, dass Vue-gebundene Objekte und Array-Variablen nach Änderungen nicht gerendert werden können, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
>>: So installieren Sie MySQL 8.0.13 in Alibaba Cloud CentOS 7
Inhaltsverzeichnis 1. Ziehen Sie das Centos-Image...
Inhaltsverzeichnis Erste Verwendung der Callback-...
Nutzungsumgebung Geben Sie im cmd-Modus mysql --v...
Vorwort Das Wesen eines Deadlocks ist Ressourcenw...
1. Umweltvorbereitung CentOS Linux Version 7.5.18...
Inhaltsverzeichnis 1. Schreiben Sie Webshell in d...
Überblick Das Prototypmuster bezieht sich auf den...
1: Unterschiede bei Geschwindigkeit und Lademethod...
In diesem Artikel wird das MySQL-Sicherungsskript...
CSS-Stil: Code kopieren Der Code lautet wie folgt:...
1. Erzwingen Sie keinen Zeilenumbruch und beenden ...
In diesem Artikelbeispiel wird der spezifische Co...
1. Welche drei Formate? Dies sind: gif, jpg und pn...
1. Lassen Sie uns zunächst eine allgemeine Einfüh...
Problembeschreibung Ich möchte CSS verwenden, um ...