【问题标题】:JsRender: how to get value from map with specified keyJsRender:如何使用指定键从地图中获取值
【发布时间】:2015-07-24 09:15:41
【问题描述】:

我将数据渲染到我的页面中,如下所示:

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

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

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

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


编辑:

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

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

但是,我想从 data2 中获取数据,其键与 data1 中的键相同。有没有这样的方法:

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

这样做? 我现在只知道使用一个辅助函数,然后通过 (key, #data.parent) 来解析关联的数据值,但是每次编写一个辅助函数有点繁琐。

【问题讨论】:

    标签: jsrender


    【解决方案1】:

    更新:

    是的,例如你可以写:

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

    这将给

    a 1 val1
    

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

    【讨论】:

    • 抱歉,这可能不是问题中的一个好例子。就是这样,我正在迭代一个数组,例如,一个 id 列表,然后我想从另一个关联的地图中渲染数据与当前 id。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 2022-11-10
    • 2017-09-23
    • 2021-08-14
    • 1970-01-01
    • 2021-05-26
    • 2016-02-19
    相关资源
    最近更新 更多