我有这个工厂,
.factory('authentication', [function() {
return {
loginRequired: false
};
}]);
我有这个控制器,
.controller('TopNavCtrl', ['$scope', 'authentication', function($scope, authentication) {
$scope.login = function() {
authentication.loginRequired = true;
};
}]);
我在指令中有这个链接功能,
link: function(scope, element, attrs) {
scope.show = false;
scope.$watch(authentication.loginRequired, function(value) {
scope.show = value;
});
}
当authentication.loginRequired = true;
在控制器中完成时,scope.$watch
不会调用指令中的。
任何想法为什么?