gpt4 book ai didi

javascript - AngularJS $watchCollection 未被调用

转载 作者:行者123 更新时间:2023-11-29 23:19:38 26 4
gpt4 key购买 nike

我正在尝试使用来自 Controller 的 $scope.$watchCollection 来监控我拥有的服务。当我的 Controller 最初被调用时, watch 会被调用,但每次都不会。

我的 Controller :

.controller('LoginModalCtrl', ['$scope', '$modalInstance', '$http', 'loginService', function($scope, $modalInstance, $http, loginService) {

$scope.$watchCollection('loginService.service', function(newVal, oldVal) {
console.log("New Data", newVal);
$scope.service = newVal;
});

$scope.closeDialog = $modalInstance.close;
}])

我的服务:

.service('loginService', ['$http', '$filter', function($http, $filter) {
var service = {
showGDPR: false,
showGDPRModal: false,
invalidCredentials: false
};
return ({
returnVariables: function(){
return service;
},
login: function login(isValid, username, password) { //Called on toggle
//This function changes the values inside service
}
});
}]);

最佳答案

你正在对一个对象使用 $watchCollection,只使用 $watch

$scope.$watch('loginService.service', function(newVal, oldVal) {
console.log("New Data", newVal);
$scope.service = newVal;
});

关于javascript - AngularJS $watchCollection 未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51203686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com