【发布时间】:2014-10-03 22:44:02
【问题描述】:
我正在尝试让一些 JSON 数据在控制器之间传递。我用$http 得到一些JSON,用$q defer 设置我的回调并将结果分配给我的$rootScope.productList。
一切正常,但是当我在$rootScope.productList 上添加$watch 时,它返回给我undefined。您对此有什么解决办法吗?
我在控制器中的$watch:
$rootScope.watch('productList', function(newVal, oldVal) {
$scope.filters = $rootScope.productList;
console.log($rootScope.productList);
});
在另一个控制器中,我得到了我的数据。我用超时替换了$http 以重现该行为。
$timeout(function() {
$rootScope.productList = $scope.productList;
console.log($rootScope.productList);
}, 500);
http://plnkr.co/edit/7wWxXgq5BARYgm0tYVgf
我尝试使用$watch,但我会采取任何解决方法。
【问题讨论】:
标签: javascript json angularjs watch rootscope