谁能指出我如何从流星助手访问原件。 TemplateInstance
我知道,Template.instance()
但它似乎返回调用助手的模板实例,而不是为其定义助手的模板实例。
假设我们有两个小模板:
<template name='demo'>
<h1>{{helper}}</h1>
{{# border}}
<h2>{{helper}}</h2>
{{/border}}
</template>
<template name='border'>
<div style="border:1px solid red">
{{> UI.contentBlock}}
</div>
</template>
具有以下行为:
Template.demo.created = function() {
this.result = "OK";
}
Template.demo.helpers({
helper: function() {
var tmpl = Template.instance();
return tmpl.result || "FAILED";
}
});
我希望为demo
模板获得两个“OK”:第二个应该在红色边框中。但是由于 Template.instance()TemplateInstance
仅当在其所有者模板的顶层调用助手时才返回原始结果,因此结果为“FAILED”(当然在红色边框中)。
问题:是否有任何公共api可以获取原始TemplateInstance
(无需遍历view/parentView/_templateInstace
)?