В последнее время вся документация о метеорных состояниях, что onRendered
- это новый способ получить обратный вызов, когда шаблон завершил рендеринг. и rendered
- это просто для обратной совместимости.Meteor.js onRendered & rendered
Однако, похоже, что это не работает для меня. onRendered
никогда не выполняется, а rendered
делает. У меня есть самые новые Метеор версии 1.1.0.2
//only this is executed
Template.hello.rendered = function(){
console.log('rendered');
}
//and this is not
Template.hello.onRendered = function(){
console.log('onRendered');
}
//even if I comment first one out
и обе функции в действии вы можете увидеть в этом GitHub repo. Я делаю что-то неправильно, или это дефект inRendered?
и второй вопрос - почему я начал копаться в этом - как я могу выполнять код каждый раз, когда элемент dom добавляется/удаляется в мой шаблон? rendered
, похоже, не вызвано, когда это произойдет. Есть ли другой путь?
попытается на мгновение. И второй вопрос? –
@MartinsUntals вы можете использовать вложенный шаблон, содержащий dom, который удален и добавлен с помощью обратного вызова onRendered. Или вы можете использовать крючки ui, если вы пытаетесь получить анимацию (demo: https://github.com/RainHaven/meteor-ui-hooks-demo/blob/master/simple-todos.js#L45- L62) – Akshat
Вложенные шаблонные работы! –