meteor:当属性名称未知时,如何迭代对象数组
答
把它分解成两个#each
秒。外层#each遍历对象数组。 #each内部调用一个模板帮助程序,该帮助程序返回包含该对象每个属性的标签和值的对象数组。
模板:
{{#each arrayOfObjects}}
{{#each getAllFields}}
<div class="item">
{{this.label}} <span class="field-value">{{this.value}}</span>
</div>
{{/each}}
{{/each}}
助手:
getAllFields: function() {
let fields = [];
const unknownObject = this;
_.each(Object.keys(unknownObject), function(theKey) {
fields.push({label: theKey, value: unknownObject[theKey] });
});
fields = _.sortBy(fields, 'label');
return fields;
}
为什么你不知道在对象键的名字吗? – Sean
我想你至少知道你从哪里得到它? –
@Sean我的密钥正在动态生成。 – dpatnaik