【发布时间】:2013-03-03 19:20:34
【问题描述】:
我有这个简单的控制器标记
<div ng-controller="TestCtrl" ng-show="isVisible()">
<input type="text" ng-model="smth"/><br>
<span>{{smth}}</span>
</div>
还有控制器本身
function TestCtrl($scope, $log)
{
$scope.smth = 'smth';
$scope.isVisible = function(){
$log.log('isVisible is running');
return true;
}
}
为什么每次更改模型后(例如更改文本框中的一个字母)我可以在控制台中看到isVisible is running?这种情况没问题,但我认为它会在大型应用中。我可以避免这种情况吗?
【问题讨论】:
-
因为它是一个函数,所以在 $digest 阶段需要运行它来查看它是否发生了变化
标签: angularjs