现在有一种新方法可以做到这一点(Meteor 0.9.3.1),它不会污染会话名称空间
Template.helloWorld.helpers({ txt: function () { return Template.instance().myAsyncValue.get(); }});Template.helloWorld.created = function (){ var self = this; self.myAsyncValue = new ReactiveVar("Waiting for response from server..."); Meteor.call('getAsyncValue', function (err, asyncValue) { if (err) console.log(err); else self.myAsyncValue.set(asyncValue); });}
在“创建的”回调中,创建一个ReactiveVariable的新实例(请参阅docs)并将其附加到模板实例。
然后,您调用您的方法,并在回调触发时,将返回的值附加到反应变量。
然后,您可以设置您的助手以返回反应性变量的值(该值现已附加到模板实例),并且在方法返回时它将重新运行。
但请注意,您必须添加react-var程序包才能正常工作
$ meteor add reactive-var
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)