访问把手中的父范围属性时出错

时间:2015-06-02 06:36:00

标签: javascript handlebars.js templating handlebarshelper

我正在使用带有嵌套eachif助手的把手模板。看起来像这样

{{each resultSet}}
   ...some html...
   {{each segment}}
       {{if @index}}
            ---some html--
            {{../someParentValue}}
       {{/if}}
   {{/each}}
{{/each}}

当我访问此someParentValue时,我在控制台"Uncaught TypeError: Cannot read property '1' of undefined"

中收到此错误消息

如果我在路径中添加另一个级别,即../../someParentValue以获取每个resultSet的范围,那么我会收到错误"Uncaught TypeError: Cannot read property '2' of undefined"

我不确定这会是什么错误,因为在检查resultSet时,我可以看到该结果集中的每个项目都具有我尝试访问的属性。

1 个答案:

答案 0 :(得分:0)

Handlebars 3.0中的新功能,可以从支持帮助程序接收命名参数。

{{each resultSet as |rs}}
   ...some html...
   {{each segment as |seg}}
       {{if @index}}
            ---some html--
            {{rs.someResultSetProperty}}
       {{/if}}
   {{/each}}
{{/each}}

希望这有帮助。