减少ngShow的函数调用 - AngularJS?

时间:2016-04-09 17:58:40

标签: angularjs ng-show

我想根据范围中函数的值显示<div>

像这样:

<div ng-show="myFunction(id)">{{myFunction(id)}}</div>

但是,我必须进行两次函数调用。我们可以让它更优化吗?

1 个答案:

答案 0 :(得分:2)

你显然意味着myFunction(id)的计算发生两次,一次评估ng-show是否为真,一次是否在div中显示其值。

您可以通过缓存其值来轻松避免这种情况。

$scope.functionResult = myFunction(id);

每次ID更改时,您都可以触发事件,然后重新计算myFunction并更新$scope.functionResult