我一直试图从控制器上观看服务对象。我一直试图以一种很好的方式解决这个问题,但这是不可能的。我能找到的唯一解决方案就是这个(见代码)。事情就是我" console.log"返回的值,我可以看到对象,但我无法访问属性。它说" undefined"。所以我能找到的唯一解决方案就是这个,但我不太喜欢它。任何想法???
这是我的观察者"我的控制员:
$scope.$watchCollection(function(){return angular.toJson(measuresServ.getFinalMeasuresVal())},function(newVal, oldVal) {
$scope.measures = JSON.parse(newVal);
console.log($scope.measures);
console.log($scope.measures.temperatura);
});
这是我服务的对象:
var finalMeasures = {};
return {
getMeasures : function(){
finalMeasures.temperatura = 24;
finalMeasures.humedad = 45;
},
getMeasuresVal: function(){
return finalMeasures;
}
}
答案 0 :(得分:0)
我认为它应该有效:
$scope.$watch(function () {
return measuresServ.getFinalMeasuresVal();
}, function (newVal, oldVal) {
console.log(newVal);
}, true);