Angular:优化速度的更好方法是什么(ng-directives或$ watch)?

时间:2016-07-08 09:45:53

标签: angularjs

我有几个输入字段,我必须做不同的计算操作。我想知道使用$ watch或标准角度指令实现这个的更好方法是什么。

示例:



$scope.calculate = function(argument) {
// do something
}

$watch('item', fucntion(){
// do something       
       
})

<div> 
 <input type="text" ng-model="item.one" ng-keyup="calculate(item)">
 <input type="text" ng-model="item.two" ng-keyup="calculate(item)">
 <input type="text" ng-model="item.three" ng-keyup="calculate(item)">

</div>
&#13;
&#13;
&#13;

我知道AngularJs为每个指令设置了一个观察者,所以在这种情况下我有ng-keyup="calculate(item)"的3个观察者,因为据我所知,在这种情况下使用一个$watch会更好,但如果我的item嵌套了怎么办:$ scope.container.things.item

它如何影响速度性能以及进行此类操作的最佳做​​法是什么?

1 个答案:

答案 0 :(得分:0)

如果您只是设置手表,它们何时/将如何触发?什么会触发评估这些手表的摘要循环?

这是指令。所以这不是关于性能的问题,实际上只有一个选择。您需要使用指令根据用户交互触发摘要循环。