我有角以下服務:
myModule.factory("myService", function(){
return {
data: [],
updateData: function(data){
this.data = data;
}
}
});
我也有一個指令和控制其使用這項服務:
myModule.controller("myController", ['$scope', 'myService', function($scope, myService){
this.directiveOptions = {data: myService.data, someOtherData: null};
});
myModule.directive("myDirective", function(){
return {
scope: {
options: "="
},
link: function(scope, element, attrs){
scope.$watch('options.data', function(newData){
alert("data was changed");
});
}
};
});
HTML:
<div ng-controller="myController as ctrl">
<my-directive options="ctrl.directiveOptions"></my-directive>
</div>
在我稱之爲 「了updateData」(服務)的應用程序的一些點。手錶正在調用,但我得到的newData是舊數據。
我可以想出一個解釋,爲什麼手錶根本無法工作,但無法解釋其當前行爲。有任何想法嗎?
你碰巧得到這個工作? – acg 2014-08-27 21:52:11