【发布时间】:2014-07-20 16:46:35
【问题描述】:
我为车把模板创建了这个辅助函数
Handlebars.registerHelper('reverse_for', function(from, to, decrease, block) {
var result = '';
for(var i = from; i >= to; i -= decrease)
result += block.fn(i);
return result;
});
代码似乎运行异常。它有时有效,有时不返回 {{ this }} 的值(在 handlebars.js 模板中),尽管它具有正确的输入并在正确数量的项目上循环。
这就是我在 handlebars.js 模板中输出它的方式
<div class="form-group">
<label>Bar Width {{baseComponents.bar.product.max_width}} - {{baseComponents.bar.product.min_width}}</label>
<select class="form-control csb-bar-width-selector">
{{#reverse_for baseComponents.bar.product.max_width baseComponents.bar.product.min_width 1}}
<option value="{{this}}">{{this}} inches</option>
{{/reverse_for}}
</select>
</div>
同样,它有时也有效。这是第一次工作但第二次没有工作的示例。当我重新加载它可能完全或根本不工作。
同样,有时 {{ this }} 会输出正确的值,有时则不正确。我认为问题在于辅助函数以及我如何构建结果。任何帮助表示赞赏。
【问题讨论】:
标签: javascript ember.js handlebars.js