把手表达在#each助手之外

时间:2015-04-01 11:05:29

标签: javascript backbone.js handlebars.js

如何在#each块中将动态类名添加到我的Handlebars模板中,其中类名不是块范围的一部分?

<div class="{{className}}>...</div>

{{#each items}}
    <div class="{{className}}">
        ...
    </div>
{{/each}}

第一个<div>会看到类名,而#each块中的第二个却没有,因为它现在正在className中寻找items
是否可以在items块中看到#each范围之外?

2 个答案:

答案 0 :(得分:1)

您需要返回一个范围(或可能更多),使用../访问全局变量。在您的情况下,如果您将className作为一个属性传递,而将“stem”作为另一个属性,则您的代码应如下所示:

{{#each items}}
   <div class="{{../className}}">
    ...
   </div>
{{/each}}

答案 1 :(得分:0)

@root.classname将对范围的任何深度有所帮助。