[英]Meteor Blaze renderWithData
我正在尝试通过Blaze渲染模板。 所以通常我打电话
Blaze.render(Template.xxx,$("#parentnode")[0]);
效果很好。
现在,我要区分渲染它的模板xxx。 所以我想将一个变量传递给Template,我可以用它来确定它是谁。 我试过了
Blaze.renderWithData(Template.xxx,{test:"value"},$("#parentnode")[0]);
然后尝试访问中的数据
Template.xxx.onRendered(function(){console.log(this.test)});
哪个记录“ this.test is not blabla”。 如何正确传递和访问数据?
感谢您的答复,祝您有一个愉快的答复!
根据流星文档 ,不可能在onRendered
回调中访问上下文对象。 this
关键字引用模板实例,不包含任何有状态数据。 您可以做的是在DOM节点内渲染数据属性(如果不想显示,则在隐藏元素中)。 您可以从onRendered
函数访问DOM。
呈现模板时,Template.currentData()可用,因此请尝试使用Template.currentData()代替它,它应该可以工作:
Template.xxx.rendered = function() {
var _this = Template.currentData();
console.log(_this.test)
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.