我对这个问题并不确定,但是有时候我为某个功能激活$ watch时看起来不起作用。 比如我有这个简单的服务
angular.module('sp-app').factory('mediaSources', function() {
var storages = [];
return {
addStorage: function(storage) {
storages.push(storage);
},
getStorages: function() {
return storages;
}
}
});
,当我看getStorage方法,以更新我认为它不叫更改回调或仅在初始化阶段要求
$scope.$watch(function($scope) {
return mediaSources.getStorages();
}, function() {
console.log('call')
});
可以和我只通过观察返回阵列的长度属性来跟踪更改
return mediaSources.getStorages().length;
我想知道是否因为我在我的应用程序中写过类似的东西,并且它工作正常。
和你将如何解释,它有时为其他组件协同工作? –