Tại sao tôi không thể xem một đối tượng trong một dịch vụ. Ive có một biến làm việc đơn giản, nhưng một đối tượng sẽ không hoạt động. http://plnkr.co/edit/S4b2g3baS7dwQt3t8XEK?p=previewĐối tượng dịch vụ xem Angularjs
var app = angular.module('plunker', []);
app.service('test', ['$http', '$rootScope',
function ($http, $rootScope) {
var data = 0;
var obj = {
"data": 0
};
this.add = function(){
obj.data += 1;
console.log('data:', obj);
};
this.getData = function() { return obj; };
}]);
app.controller('TestController', ['$scope', '$rootScope', '$filter', 'test',
function($scope, $rootScope, $filter, test) {
//test controller
$scope.add = function(){
test.add();
};
$scope.test = test;
$scope.$watch('test.getData()', function(newVal){
console.log('data changes into: ', newVal)
});
}]);
thể trùng lặp của [$ xem một đối tượng trong góc] (http://stackoverflow.com/questions/19455501/watch-an-object -in-góc) – kvetis
Tôi đề nghị bạn viết 'hàm() { return test.getData(); }, 'thay thế 'test.getData()'. Bằng cách này, bạn có thể tránh lỗi, vì góc không xác thực định nghĩa chuỗi. –