迭代二维数组时得到外部for循环的索引

时间:2015-06-16 17:09:36

标签: javascript jsrender

我在jsrender模板中迭代2维数组。我想获得两个'for'循环(内部和外部)的索引。可能吗?我知道我可以使用#index变量得到当前(内部)'for'循环的索引。但我怎样才能得到外部指数?实施例

  {{for cachedImages}}
  <tr>
    {{for #data}}
    <td><img src="/Cache/{{:#outerIndex}}/{{:#index}}"/></td>
    {{/for}}
  {{/for}}

1 个答案:

答案 0 :(得分:1)

您可以升级父母,并使用:

{{for cachedImages}}
  <tr>
    {{for #data}}
      <td><img src="/Cache/{{:#parent.parent.index}}/{{:#index}}"/></td>
    {{/for}}
  </tr>
{{/for}}

或者,您可以在外部循环中定义一个可以从嵌套上下文中访问的上下文索引变量:

{{for cachedImages}}
  <tr>
    {{for #data ~outerIndex=#index}}
      <td><img src="/Cache/{{:~outerIndex}}/{{:#index}}"/></td>
    {{/for}}
  </tr>
{{/for}}

另请参阅其他一些回复,例如:JsRender Access parent index in nested template