更新:所选答案中记录的错误已由流星开发人员修复
在我的流星应用程序中,我有一些制作全局助手的咖啡脚本:
Handlebars.registerHelper "title",->
Session.get("title")
和一块模板:
{{#each edited}}
<li><a class="left-nav" href="{{entryLink this}}">{{this.title}}</a></li>
{{/each}}
this.title 被全局助手覆盖,而不是使用 this.title 上下文。(我知道,因为如果我删除全局助手,它会很好用)
如果我添加以下内容:
Handlebars.registerHelper "debug", ->
console.log this
console.log this.title
像这样的模板:
{{#each edited}}
<li><a class="left-nav" href="{{entryLink this}}">{{this.title}}{{debug}}</a></li>
{{/each}}
this.title 正确打印到控制台,但未插入到模板中
知道为什么会发生这种情况或如何使“this.title”来自本地上下文