我是Meteor的新手所以很明显我不知道Meteor的最佳实践。我试图理解模板的助手和事件函数中的上下文this
。我想要的是将div的文本绑定到输入字段。
的CoffeeScript
Template.test.helpers
text: "initial text"
Template.test.events
"keypress #input": (e) ->
this.text = e.target.value
return
但我了解到this
并未指向test
。从事件中访问助手的正确方法是什么?
我尝试Tempalte.test.text = e.target.value
虽然值正在改变,但DOM没有更新。不是帮助者应该被动反应吗?
答案 0 :(得分:0)
您不能以这种方式设置帮助者。如果您希望它被激活,最好的方法是使用Session变量。我不会写coffescript但是你可以用javascript来做到这一点:
Template.test.text = function(){
return Session.get("myTextVar");
};
Template.test.events({
"keypress #input":function(e,t){
Session.set("myTexVar",e.target.value);
}
});
您也可以创建自己的反应变量,但这对您来说太难了。