用一个简单的代码
{{#each array}}
{{@index}}: {{this}}
{{/each}}
大量错误出现。对于{{@key}}
对象也是如此。为什么会这样?
用一个简单的代码
{{#each array}}
{{@index}}: {{this}}
{{/each}}
大量错误出现。对于{{@key}}
对象也是如此。为什么会这样?
查看源代码(在https://github.com/meteor/meteor/blob/master/packages/handlebars/parse.js):看起来{{@ ..}}
与 Meteor 打包的 Handlebars 版本不支持这组表达式.
这对我来说绝对是一种挫败感。与此同时,我制作了一个车把助手来将任何内容解析为命名的“键”和“值”对象:
Handlebars.registerHelper('key_value', function(context, options) {
var result = [];
_.each(context, function(value, key, list){
result.push({key:key, value:value});
})
return result;
});
这将与#each
运算符一起使用,例如:
<dl class="attributes">
{{#each key_value attributes}}
<dt>{{key}}</dt><dd>{{value}}</dd>
{{/each}}
</dl>
(我也刚刚将此发布到相关的 Using @index in meteor #each iterator doesn't work)