在Angular JS ng-repeat

时间:2016-10-25 15:33:02

标签: angularjs angularjs-ng-repeat

我正在尝试使用特定的数组键(" currenttank")对象("目标")。指令部分看起来像这样:

<tr ng-repeat="item in tanks[{{currenttank}}].targets">
        <td ng-bind="item.time"></td>
        <td ng-bind="item.target"></td>
        <td></td>
        <td></td>
    </tr>

发生以下语法错误:

  

https://docs.angularjs.org/error/ $解析/语法P0 =%7B&安培; P1 =无效%20key&安培; P2 = 8&安培; P3 =坦克%5B%7B%7Bcurrenttank%7D%7D%5D.targets&安培; P4 =%7Bcurrenttank %7D%7D%5D.targets%20AT%20Error%20(天然)

我不明白如何在指令中使用动态密钥。我一直使用卷曲括号内的变量,但这似乎不适用于此。

非常感谢您的帮助。 斯特芬

1 个答案:

答案 0 :(得分:2)

如果使用此表达式,则不必使用{{}} sytax。 此外,您可能希望将其全部包装为ng-if,以防止在最初未设置某些数据时进行渲染。由于Ng-if具有高优先级,因此在您想要之前,它将阻止代码执行。

<tr ng-repeat="item in tanks[currenttank].targets">
    <td ng-bind="item.time"></td>
    <td ng-bind="item.target"></td>
    <td></td>
    <td></td>
</tr>