2015-04-22 4 views
11

Nach feinen Arbeiten mitMeteor js Vorlagen gerendert vs onRendered

Template.name.rendered = function() { ..... }

Ich änderte dies:

Vorlage. name.onRendered (function() { ..... })

aber ich habe nicht die gleichen Ergebnisse und ich finde nicht zu viel Dokumentation über die Unterschiede, einige würden helfen mir bitte? oder weiß jemand wo ich die Unterschiede sehen kann?

+0

Können Sie ein bisschen mehr beschreiben, was für ein unterschiedliches Verhalten Sie erleben? –

+0

Es ist wie in OnRendered die Daten nicht ankommt, sobald in gerendert, muss ich aktualisieren, um die richtigen Daten zu haben, aber vielleicht verwende ich falsch (weil die API geändert), würde ich gerne sehe die Unterschiede irgendwo, aber ich finde nicht zu viel Dokumentation darüber :( –

+0

Es gibt keinen Unterschied zwischen 'gerendert' und' onRendered', es soll genau die gleiche API sein. – saimeunt

Antwort

16

In Meteor 1.0.4 rendered wurde als veraltet und ersetzt durch onRendered:

hinzufügen onRendered, OnCreated und onDestroyed Methoden zur Vorlage. Zuordnungen zu Template.foo.rendered usw. sind veraltet, werden jedoch aus Gründen der Abwärtskompatibilität weiterhin unterstützt. Quelle: History.md

Wenn Sie „falsche“ Verhalten sehen, wenn onRendered überprüfen Sie bitte Sie verwenden Meteor 1.0.4 oder neuer.

+0

Ich benutze Meteor 1.2.1 und die onRendered einfach nicht feuern, während gerendert tut :( –

+3

Hallo @ PredragStojadinović, habe ich das gleiche Problem gefunden. Mit onRendered es war einfach nicht funktioniert. Ich verwende eine Sequenz von collection.find ruft auf und aktualisiert das DOM mit jquery. Mit gerendert hat es wunderbar funktioniert. Ich habe dann meinen Fehler gefunden ... Ich habe Template.name.onRendered = function() {.....} gefunden, nur für onRendered gerendert, anstatt es als Callback zu verwenden wie Template.name.onRendered (function() {.....}). Nicht mit "=". Nach der Korrektur funktionierte es gut. – Juliomac