【发布时间】:2016-03-10 10:33:08
【问题描述】:
socket.io 更新变量时如何运行函数。似乎 $watch 不起作用,或者可能是我做错了什么。
$http.get('/api/availabilitys/' + myId).then(response => {
$scope.availability = response.data;
socket.syncUpdates('availability', $scope.availability);
});
$scope.$watch('availability', function() {
console.log('test'); //This is not printing on update
angular.forEach(self.location, function (loc){
loc.availability = $scope.availability.filter(function (a){
return a.loc === loc._id;
});
});
});
【问题讨论】:
-
在您的
$http.get中更新值后,尝试执行$scope.$apply() -
没有帮助。测试第一次打印。它不会在更新时打印。
标签: angularjs sockets socket.io