具有两个参数的Angular函数具有错误:[$ parse:syntax]

时间:2013-10-24 16:58:10

标签: javascript parsing angularjs indexing syntax-error

完整错误是:

Error: [$parse:syntax] Syntax Error: Token ',' not a primary expression

导致错误的代码是:

<div ng-repeat="item in items">

    <input type="submit" ng-click="delete({{item.itemId}},$index)" value="delete">

</div>

该功能实际上适用于以前的项目,但是当我尝试将新项目添加到项目数组时会中断。问题孩子似乎是逗号,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:10)

您无需在item.itemId中包裹{{}}。只是做:

ng-click="delete(item.itemId, $index)"

使用Angular的模板系统时,您只需要用大括号括起来 - 大括号告诉Angular替换值。在这种情况下,ng-click的值是在发生单击事件时评估的表达式(在控制器的范围内)。

演示 Fiddle