我有下面的代碼,看起來好像ng-checked在頁面加載時觸發我的簡單警報方法兩次。爲什麼ng-checked在頁面加載時觸發兩次
(function() {
'use strict';
angular.module('app', ['common.ajax']);
angular.module('common.ajax', []);
angular
.module('app')
.controller('loginCtrl', controller);
controller.$inject = ['$scope', 'ajaxFactory'];
function controller($scope, ajaxFactory) {
$scope.alertme = activate;
function activate() {
ajaxFactory.getData();
}
}
angular
.module('common.ajax')
.factory('ajaxFactory', factory);
factory.$inject = ['$http'];
function factory($http) {
var service = {
getData: getData
};
return service;
function getData() {
alert("click me");
}
}
})();
<script data-require="[email protected]" data-semver="1.5.6" src="https://code.angularjs.org/1.5.6/angular.min.js"></script>
<body ng-app="app" ng-controller="loginCtrl">
<input type="checkbox" ng-checked="alertme()" ng-model="tester" />
</body>
我只是在我的角度旅程開始了等等爲什麼發生這種情況將是巨大的,因爲我似乎無法找到特定的在線任何東西任何信息。
它的射擊兩次,因爲消化循環將運行至少兩次。 [見這裏](https://www.sitepoint.com/understanding-angulars-apply-digest/)。因爲'ng-change'或'ng-click'下面的答案就是你要找的。但我更喜歡更改處理程序。 – AWolf