我遇到了Handlebars模板的范围问题。我有一个模块列表,每个模块都包含一个服务列表。所以我有一个这样的模板(删除了一些标记):
{{#each controller}}
<a onclick='$(".{{unbound uuid}}").toggle(0);'>
{{#each service in services}}
<div class='{{unbound uuid}}'></div>
{{/each}}
{{/each}}
问题是第二个{{unbound uuid}}
没有被替换。如果我尝试访问外部范围的任何其他项目,同样的事情发生。但是,Ember.js站点说使用each ... in
助手应该保留外部范围。我做错了什么?
(仅供参考:使用最新版本的Ember.js,Ember-data和Handlebars。)
答案 0 :(得分:1)
也许这是正确的语法?
{{#each item in controller}}
<a onclick='$(".{{unbound item.uuid}}").toggle(0);'>
{{#each service in services}}
<div class='{{unbound item.uuid}}'></div>
{{/each}}
{{/each}}