Meteor 在没有辅助函数的情况下将数据导入模板
以下两者之间的区别是什么:Meteor 在没有辅助函数的情况下将数据导入模板,meteor,Meteor,以下两者之间的区别是什么: Session.set("sessionclickcount",1); Template.hello.clickcount = Session.get("sessionclickcount"); 及 稍后,我尝试通过使用以下代码更新会话变量来更新模板数据: Template.hello.events({ 'click input' : function () { Session.set("sessionclickcount",
Session.set("sessionclickcount",1);
Template.hello.clickcount = Session.get("sessionclickcount");
及
稍后,我尝试通过使用以下代码更新会话变量来更新模板数据:
Template.hello.events({
'click input' : function () {
Session.set("sessionclickcount",
Session.get("sessionclickcount")+1);
}
});
第一个方法失败,html不会更改。第二次成功。为什么?谢谢 流星中的助手需要返回函数。这是因为该函数在上下文中运行,并允许meteor跟踪依赖项 这些依赖关系可以帮助meteor知道模板需要用新数据重新绘制
如果使用
Template.hello.clickcount=Session.get(“sessionclickcount”)代码>,渲染引擎(spark)不会从中获得任何依赖项,这就是为什么它不会更改。它不知道必须重新绘制它。meteor中的助手可以是函数或常量值
发件人:
还可以使用助手传递常量数据
//与{{#每个部分}配合使用效果良好
Template.report.sections=[“情况”、“复杂性”、“解决方案”]
在本例中,您将helper设置为常量值1,因为它是执行这一行javascript时会话字段的值:
Template.hello.clickcount=Session.get(“sessionclickcount”)代码>当OP说“第一个方法失败…”时,他的意思是“值没有改变”,而不是“没有显示任何内容”。在这种情况下,将始终显示值“1”。
Template.hello.events({
'click input' : function () {
Session.set("sessionclickcount",
Session.get("sessionclickcount")+1);
}
});