2.4.2
http://jsfiddle.net/yMv7y/3265/
Warten Sie auf der JSFiddle, bis setTimeout
auf L15 nach zwei Sekunden abgeschlossen ist.
Damit CustomElA noch im DOM ist.
CustomElA wird beim erneuten Rendern aus dem DOM entfernt. Es wird jedoch beim dritten erneuten Rendern wieder angezeigt (getestet mit setInterval
anstelle von setTimeout
bei JSFiddle auf L16).
Die JSfiddle verwendet Vue v2.4.0, aber ich habe den Fehler in v2.4.2 lokal überprüft.
Sieht aus wie ein Fehler, danke, dass Sie ihn gemeldet haben. Sieht aus wie es in 2.1.4 eingeführt wurde. Es sieht jedoch so aus, als ob das Problem während des Patches von vnodes auftritt.
Bearbeiten: Es sieht so aus, als ob _isDestroyed
bei init
während des VNode-Patches falsch ist, sodass Mount nicht aufgerufen wird und aus dem Knotenbaum verschwindet
Dies ist behoben. Beachten Sie jedoch, dass das Element als "ersetzt" betrachtet wird, da Sie das Element ändern, das die Slots umschließt. Daher wird der gesamte Slot-Inhalt, einschließlich der darin enthaltenen Komponenten, zerstört und anschließend neu erstellt. So funktioniert das Vdom-Patching leider und es ist unwahrscheinlich, dass es sich ändert.
@ yyx990803
Klingt gut. Danke. Hast du einen Termin für die nächste Veröffentlichung?
Sie fragen sich auch, wann die nächste Version erscheinen wird, oder gibt es in der Zwischenzeit eine Möglichkeit, diese Version zu installieren? Vielen Dank.
@ Tolmark12 Klonen Sie das Repo, erstellen Sie die Dateien und führen Sie npm link
, um die lokale Version von vue 😉 zu verwenden (dies sind sehr grobe Anweisungen).
Hilfreichster Kommentar
Sieht aus wie ein Fehler, danke, dass Sie ihn gemeldet haben. Sieht aus wie es in 2.1.4 eingeführt wurde. Es sieht jedoch so aus, als ob das Problem während des Patches von vnodes auftritt.
Bearbeiten: Es sieht so aus, als ob
_isDestroyed
beiinit
während des VNode-Patches falsch ist, sodass Mount nicht aufgerufen wird und aus dem Knotenbaum verschwindet