在我的流星项目中,我有这样的代码:
baz = function() {
// some jQuery add/remove class here...
};
Template.foo.onRendered(function() {
baz();
});
Template.bar.onRendered(function() {
baz();
});
Template.qux.onRendered(function() {
// no baz() call
});
有没有更好的方法可以完成此任务,而无需在某些模板渲染上重复
baz();
? 最佳答案
流星1.2.1允许您通过以下代码运行全局onRendered()函数:
Template.onRendered(function() {
var that = this; //pass that into baz() if you need it
Deps.afterFlush(function() {
console.log('baz');
baz();
});
});
如果这不满足您的需要,并且您希望在每个页面上使用它,只需在一些常用模板(如菜单或页面标题)中使用onRendered(),但这不能保证您尝试使用JQuery更改的HTML将被保留。呈现。
关于javascript - 一些模板渲染的 meteor 回调,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35063213/