【发布时间】:2019-12-07 06:25:04
【问题描述】:
我使用 Blaze.renderWithData 动态生成 2 个模板。 每次数据都不一样。
contactForm.each(function(index) {
const parent = $(selector).get(index);
const data = {email: parent.dataset.email}; // here data are different
Blaze.renderWithData(Template.contact, data, parent);
});
当我在模板的 onCreated 函数中记录数据时,数据是不同的。但是在onRendered中,第一个模板数据实际上被第二个模板数据替换了。
为什么会这样?
Template.contact.onCreated(function() {
console.log('onCreated', this.data.email);
});
Template.contact.onRendered(function() {
console.log('OnRendered', this.data.email);
});
结果:
onCreated 1
onCreated 2
onCreated 3
OnRendered 3
OnRendered 3
OnRendered 3
【问题讨论】:
-
使用
{{ > contact .... }}从HTML模板传递数据时是否会出现同样的行为?
标签: meteor meteor-blaze