减少 ngShow 的函数调用 - AngularJS?

Decrease function calls for ngShow - AngularJS?

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

像这样:

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

但是,我必须调用函数两次。我们可以进一步优化吗?

你显然是说 myFunction(id) 的计算发生了两次,一次是评估 ng-show 是否为真,一次是在 div.

中显示它的值

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

$scope.functionResult = myFunction(id);

每次 id 改变,你可以触发一个事件,然后重新计算 myFunction 并更新 $scope.functionResult