从文档中我可以看出,您可以使用“this.data”从渲染回调中访问模板数据上下文。但是每当我尝试这个时,我都会得到不确定的。使用基本流星示例https://gist.github.com/4362039
的示例其他人有此问题吗?或者有一个工作示例,您可以访问this.data?
答案 0 :(得分:7)
@ parkej3,你是正确的this.data
是从创建,渲染和销毁的回调中访问模板的数据上下文的方法。但是:小心这一点很重要(双关语)因为创建,呈现和销毁的回调中的this
是模板实例,而在模板助手中,this
指的是模板的数据上下文。
this.data
将被定义。
正如@Rahul所提到的,如果模板在{{#with}}
或{{#each}}
块内部呈现,则模板将具有数据上下文,在这种情况下,这些语句为模板实例提供其数据上下文。 {{#with contextObject}}
将contextObject
分配给this.data
,而{{#each items}}{{>item}}{{/each}}
会将item
模板的this.data
设置为每个项目的相关项目。< / p>
答案 1 :(得分:2)
在same documentation中,如果向上滚动一下,您会找到以下句子:
模板实例对象在创建,呈现和销毁的模板回调中作为this的值被找到,并作为事件处理程序的参数。
正如Diogenes建议的那样,你正在寻找this
。如果您有嵌套模板并想要查找当前所在的上下文对象(例如,如果您的模板包含{{#each}}循环),则this.data
非常有用。