<p>vue 2.0.3 v-Modell wird nicht mit einem Array aktualisiert</p>

Erstellt am 16. Okt. 2016  ·  6Kommentare  ·  Quelle: vuejs/vue

Ich bin dabei, eine Anwendung von Vue 1.x auf 2.0.3 zu migrieren. In dieser Anwendung habe ich mehrere Auswahlmöglichkeiten, bei denen jedes V-Modell an einen einzelnen Index eines Arrays gebunden ist. Dies ist in Vue 1.x ohne Probleme, wird jedoch in Version 2 nicht aktualisiert. Ich glaube, das ist ein potenzieller Fehler.

Ich habe das Problem hier wiedergegeben:
https://jsfiddle.net/peterkorgaard/a7vvz753/18/

Vue.js Version

2.0.3

Reproduktionslink

https://jsfiddle.net/peterkorgaard/a7vvz753/18/

Schritte zum Reproduzieren

Was wird erwartet?

Was passiert eigentlich?

bug

Hilfreichster Kommentar

Sie sollten den Objekttyp verwenden, da die Modellbindung in der internen Implementierung model [index] = verwendet . Wenn Sie den Array-Typ verwenden, konnte der Wert nicht beobachtet werden. http://vuejs.org/guide/list.html#Caveats

Sie können die Auswahl beim Erstellen initiieren und die Auswahl aktualisieren, nachdem die selectBoxes-Daten aktualisiert wurden.

Ich aktualisiere den Geiger hier https://jsfiddle.net/defcc/a7vvz753/21/

Alle 6 Kommentare

Ich untersuche das. Scheint, dass die Auswahl nicht richtig beobachtet wird

@peterkorgaard Ich aktualisiere den Geiger hier https://jsfiddle.net/defcc/a7vvz753/20/ . Sie können dies als Problemumgehung verwenden.

Weitere Informationen finden Sie unter http://vuejs.org/guide/reactivity.html#Change -Detection-Caveats

Ich habe die gleiche Frage.

@defcc Ihre Lösung kann lösen, dass wir bereits wissen, wie viele Elemente des Modells. Wie können wir vorgehen, wenn wir das Modell von Array zu Objekt ändern?

Sie sollten den Objekttyp verwenden, da die Modellbindung in der internen Implementierung model [index] = verwendet . Wenn Sie den Array-Typ verwenden, konnte der Wert nicht beobachtet werden. http://vuejs.org/guide/list.html#Caveats

Sie können die Auswahl beim Erstellen initiieren und die Auswahl aktualisieren, nachdem die selectBoxes-Daten aktualisiert wurden.

Ich aktualisiere den Geiger hier https://jsfiddle.net/defcc/a7vvz753/21/

@defcc Bravo, diese Lösung hat bei mir gut funktioniert. Ich danke dir sehr!

Vielen Dank, @defcc , für die Klarstellung. Ich werde diese Problemumgehung verwenden, bis das Problem behoben ist. Und danke für die großartige Arbeit, die alle an Vue leisten. Ich bin wirklich erstaunt.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen