在Dust.js中渲染2个独立的数组

时间:2013-03-21 15:18:04

标签: javascript dust.js

所以我试图用两个独立的数组渲染一个灰尘模板。我的数据类似于:

{
    array1: [5, 10, 20],
    array2: [10, 20, 40]
}

我的灰尘模板看起来像:

{#array1}
<div class="span2">
  <input type="number" value={.}></div>
<div class="span2">
  <input type="number" value={array2[{$idx}]}></div>
</div>{~n}
{/array1}

它显示了array1中的元素,但是array2的所有输入都是空白的。我正在使用dust-full-1.2.2.js linkedIn fork。我该怎么做才能显示array2的值?

3 个答案:

答案 0 :(得分:6)

执行此操作的Dust方法是更改​​数据(如果可能):

{
    numbers: [
        {val1: 5, val2: 10},
        {val1: 10, val2: 20},
        {val1: 20, val2: 40}
    ]
}

然后你的模板看起来像这样:

{#numbers}
  <div class="span2">
    <input type="number" value="{val1}"></div>
  <div class="span2">
    <input type="number" value="{val2}"></div>
  </div>
{/numbers}

答案 1 :(得分:0)

如果这对你有用,请告诉我。 http://jsfiddle.net/yXx5L/3/

我使用帮助器填充第二个文本框值而不更改数据格式。

value={#counterpart i=$idx}{ele}{/counterpart}

答案 2 :(得分:0)

将上下文更改为Array2。添加{#array2 [...]}

请参阅此处的显式上下文设置:https://github.com/linkedin/dustjs/wiki/Dust-Tutorial