角度ng重复发射的次数比预期的多

时间:2014-01-06 03:36:31

标签: angularjs angularjs-ng-repeat

函数key_helper被调用的次数比预期的多很多。如果orderedkeys的长度是5,它被调用25次而不是5次。我不知道要包含哪些代码来更好地理解我的问题。如何确保它.doesn不要重复

模板:

<td  ng-repeat="key in orderedkeys" >
<div>{{Key_Helper(key)}}</div>
</td>

我尝试使用过滤器:(同样的问题)

 <td  ng-repeat="key in orderedkeys" >
 <div>{{key | debug}}</div>
 </td>

功能:

$scope.Key_Helper = function(item)
{     
  console.log("key");    
};

1 个答案:

答案 0 :(得分:2)

表达式{{}}不是实际的JavaScript,而是angular expressionangular expression允许您调用$scope方法和$filter

如果在表达式内发生任何函数调用,那么它将执行两次,首先调用函数,然后在下一个digest周期调用第二次, angular以这种方式工作$filter是函数调用。最好使用简单的expression,例如{{1+1}}或简单地评估{{key}}。您可以查看thisthis以便更好地理解。