我正在尝试让 {{#each}}
帮助器迭代一个对象,就像在 Vanilla Handlebars 中一样。不幸的是,如果我在一个对象上使用#each,Ember.js 版本会给我这个错误:
断言失败:#each 循环的值必须是数组。你传递了 [object Object]
我写了这个助手试图解决这个问题:
Ember.Handlebars.helper('every', function (context, options) {
var oArray = [];
for (var k in context) {
oArray.push({
key : k,
value : context[k]
})
}
return Ember.Handlebars.helpers.each(oArray, options);
});
现在,当我尝试使用 {{#every}}
时,出现以下错误:
断言失败:registerBoundHelper 生成的助手不支持与 Handlebars block 一起使用。
这似乎是一项基本功能,我知道我可能遗漏了一些明显的东西。谁能帮忙?
编辑:
这是一个 fiddle :http://jsfiddle.net/CbV8X/
最佳答案
使用 {{each-in}}
助手。您可以像 {{each}}
助手一样使用它。
例子:
{{#each-in modelWhichIsObject as |key value|}}
`{{key}}`:`{{value}}`
{{/each-in}}
关于javascript - 我怎样才能让 Ember.js handlebars #each 遍历对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21738047/