1
流星客戶端模板助手受益於會話反應性,以向瀏覽器提供正確的數據。
相同的模板有一個click
事件,它修改了這個會話,因此期望在瀏覽器中進行一些更改,然後使用jQuery修改「新」顯示。等待模板自己的事件爲自己的助手更改會話
問題是,jQuery並沒有等到DOM準備好新顯示,因此上述會話反應並沒有完成它的魔力。
如何解決這個問題?由於
Template.checks.helpers({
'values': function() {
return Session.get('someVar');
}
});
Template.checks.events({
'click .checks-row': function(event) {
Session.set('someVar', newArray);
$('li').each(do things);) //<---- ops, the old list items still there
}
});
<template name="checks">
{{#each values}}
<ul class="checks-row">
<li>{{this.label}}</li>
</ul>
{{/each}}
</template>
如果你實際需要使用jQuery(你正在初始化一個插件或其他東西),那麼對列表項使用一個單獨的模板。在該模板的'onRendered'回調函數中,執行jQuery的工作。 –