【发布时间】:2014-10-08 08:53:11
【问题描述】:
'use strict';
angular.module('app', [])
.controller('MainCtrl', function($scope) {
console.log('heyo')
})
.directive('panel', function() {
return {
template: '<div ng-if="isAuthenticated()">Im In!</div>',
restrict: 'E',
scope: {},
replace: true,
link: function(scope, element, attrs) {
var uid = 3
scope.isAuthenticated = function() {
console.log(uid)
return uid !== null
}
}
}
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.4/angular.min.js"></script>
<div ng-app="app">
<panel></panel>
</div>
我的问题非常简单明了。
console.log 在我的应用程序上被评估了 50 次,而这里只有 2 次。
发生了什么事?
我认为它与$digest() 循环有关(如果不相关的话),但更明确的答案会很好。
【问题讨论】:
标签: javascript angularjs angular-directive