2015-01-28 2 views
1

Есть ли способ запустить обратный вызов в шаблоне после его динамического вставки? Я нашел методы rendered и created в шаблоне, но те, которые выполняются для каждого экземпляра шаблона в первоначальном рендеринге.Meteor шаблон динамически вставленный обратный вызов

Придумайте список задач, где нажав на кнопку «Добавить» должен insert элемент в ToDos коллекции, ждать Метеор, чтобы обновить содержимое #each цикла, то фокус ввода элемента на вновь добавленный элемент. Как мне это сделать?

Спасибо.

+0

Я думаю, вы можете использовать [анимация крючки] (https://groups.google.com/forum/#!topic/meteor-core/1kUoG2mcaRw) для этого. –

+0

Если вы добавляете элемент в коллекцию, эти данные реагируют и автоматически обновляются на экране. Я думаю, что вы действительно хотите запустить обратный вызов после завершения вставки. (http://docs.meteor.com/#/full/insert) Параметр 'results', переданный в обратный вызов, содержит документ, который вы можете использовать, чтобы делать все, что хотите, с вновь добавленным элементом. – d4nyll

ответ

1

Вы можете использовать Tracker.afterFlush для выполнения действий после обновления страницы. Так, например:

Items.insert({...}); 
Tracker.afterFlush(function() { 
    // In here, the UI has already been updated 
}); 
+0

Удивительно, это может решить несколько другую проблему, с которой я столкнулся с вызовом методов начальной загрузки, инициализируя выпадающие списки после добавления новых элементов на страницу. – tehfailsafe

Смежные вопросы