Meteor blaze 模板访问对象 属性 无需帮助即可按键

Meteor blaze template access object property by key without helper

不知是否可以通过属性-string like

实现对象访问
const obj = { foo:"bar" }
obj["foo"] // returns "bar"

通过 Blaze 空格键(因此,不使用辅助函数)。

我试过

{{#with obj}}
  {{this['foo']}}
{{/with}}

但是好像不接受方括号。注意:我不能只输入

{{this.foo}}

因为 属性 名称是由另一个对象作为值动态提供的。

returns 键和另一个接受 object 键和 returns 值的辅助函数怎么样?

// JS
Template.registerHelper('keys', function keys (object) {
  return Object.keys(object);
});
Template.registerHelper('pick', function pick (key, object) {
  return object[key];
});

// html
<template name="foo">
  {{#each key in (keys obj)}}
    {{key}} - {{pick key obj}}
  {{/each}}
</template>

编辑:刚刚注意到您的标题说得很明确 "Without helper"。如果没有帮手,我认为这是不可能的