我似乎找不到一种方法来做到这一点,并且尝试了子表达式和 StackOverflow 上发布的各种其他答案 - 但它们似乎都假设我提前知道我正在使用的 key 。
我有以下对象:
{
fields: {
1: {
complete: 1,
submitted: 0
},
2: {
complete: 1,
submitted: 0
}
}
等等。等等
在我的 Handlebars 模板中,我循环遍历对象数组。该数组中的每个对象都有一个 field_id
键,该键是与上例中的 1 或 2 匹配的数字。
我需要根据当前循环的 field_id 来访问上述数组结构中的变量。我试过:
{{fields[(field_id)].complete}}
{{fields[{{field_id}}].complete}}
{{fields.(field_id).complete}}
{{fields.({{field_id}}).complete}}
但它们都不起作用。
有办法做到这一点吗?
最佳答案
我不会为此创建自定义助手。相反,我会使用现有的 Lookup helper与 with block helper 合作:
{{#with (lookup fields field_id) as |field|}}
{{field.complete}}
{{/with}}
或者,您可以使用带有 subexpression 的查找助手。 :
{{lookup (lookup fields field_id) 'complete'}}
关于javascript - 在 Handlebars mustache 内按键访问数组/对象变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39306840/