AngularJS:我无法从父状态的控制器获取http.get的JSON数据

时间:2016-03-24 06:11:25

标签: angularjs angular-ui-router

我有一个像这样的嵌套视图:

.state('xyz',{
    url:'/xyz',
    templateUrl: 'tpl/xyz.html'
    controller : 'xyzCtrl'
})
.state('xyz.abc',{
    url:'/abc',
    templateUrl: 'tpl/abc.html'
})

和控制器:

app.controller('xyzCtrl', ['$scope','$htpp', function($scope,$http){
    $scope.data = [];
    $http.get('../js/data.json').then(function(res){
    $scope.data = res.data;
    });
}]);

问题是我在xyz的视图中获取数据的值,但我无法在abc的视图中获取它。通常孩子会继承父母范围数据吗?

1 个答案:

答案 0 :(得分:0)

  

abstract - {boolean =} - 抽象状态永远不会直接   已激活,但可以为其常见子项提供继承属性   的状态。

试试这个 abstract:true

.state('app',{
    abstract: true,
    url: '/app',
})
.state('app.xyz',{
    url:'/xyz',
    templateUrl: 'tpl/xyz.html'
    controller : 'xyzCtrl'
})
.state('app.abc',{
    url:'/abc',
    templateUrl: 'tpl/abc.html'
})