Ich füge Vorlagen mit UI.render () und UI.insert () ein.
Als ich versuchte, die Vorlage zu entfernen, die ich eingefügt habe, scheint sie im Speicher zu bleiben und die zerstörte Methode wird nicht aufgerufen.
Laut der Dokumentation sollte es Eigentum bereinigen, wenn ich jquery verwende, um das Element zu entfernen.
Ich teste es mit dem folgenden Code:
test.html:
%Vor%test.js:
%Vor%Was habe ich falsch gemacht?
Danke.
Dies ist derzeit ein Fehler in Meteor und wird in den folgenden verwandten GitHub-Problemen verfolgt:
Es sollte behoben werden, wenn Updates für Blaze veröffentlicht werden.
Laut Avital am 19. April wird der Code neu geschrieben ( Quelle ) ).
Wenn Sie sich in der Zwischenzeit die Eigenschaften Ihres Knotenelements $("#handle")[0]
ansehen, sehen Sie, dass Sie eine namens $ui
haben, die dem Objekt DomRange
entspricht (code ). Wenn Sie remove
für das Objekt DomRange
aufrufen, wird Ihr destroyed
-Rückruf ausgelöst. Tatsächlich werden die Callbacks auch für verschachtelte Vorlagen ausgelöst.
Ich bin auf Meteor 1.0.3.2, daher ist es möglich, dass diese Lösung zum Zeitpunkt der Anfrage nicht verfügbar war. Blaze bietet tatsächlich eine remove
-Methode, die eine zuvor gerenderte Vorlagenansicht entfernt und den destroyed
-Rückruf aufruft.
Ihr Code würde folgendermaßen aussehen:
%Vor% Beachten Sie, dass Sie wahrscheinlich den created
-Rückruf anstelle des rendered
-Rückrufs verwenden möchten. Dies liegt daran, dass remove
eine bereits im DOM gerenderte Ansicht erwartet. Sie können mehr über den Unterschied zwischen diesen beiden Rückrufen hier lesen: Ссылка
Und für weitere Informationen zur Benutzeroberfläche, die Blaze Ihnen bietet, finden Sie hier Ссылка .
Tags und Links meteor meteor-blaze