JsRender:如何从具有指定键的地图中获取值

JsRender: how to get value from map with specified key

好吧,我会像这样将数据呈现到我的页面中:

$('#component_data').html($('#component_data_tpl').render(result, extra_opts));

这里'result'是我的ajax请求返回的一张大地图,里面包含了所有的数据,例如

result: { data1: { 'a': 1, 'b':2}, data2: {...}, ... }

那么当我确定我的模板代码中的键是 'a' 时如何渲染 data1['a'] 而无需循环来迭代 data1 中的所有值?我必须创建辅助函数吗?


编辑:

抱歉,上面的例子可能不是很好。 我正在迭代数据 1:

{{props data1}}
    {{>key}}
{{/props}}

但是我想从data2中获取数据,data2的key和data1中的key是一样的。有没有这样的方法:

{{props data1}}
    {{>key}}
    {{> data2[key]}}
{{/props}}

要做到这一点? 我现在只知道用辅助函数,然后传(key, #data.parent) 解析关联数据值,但是每次都写一个辅助函数有点乏味。

更新:

是的,例如你可以这样写:

{{props data1 ~data2=data2}}
  {{:key}} {{:prop}} {{:~data2[key]}}
{{/props}}

这会给

a 1 val1

{ data1: { 'a': 1, ...}, data2: { 'a': 'val1'...}, ... }