将JSON数据绑定到angular中绑定范围变量的属性

将JSON数据绑定到angular中绑定范围变量的属性,json,angularjs,Json,Angularjs,我正在努力创建一个角度模型。该模型基本上是一种父子关系,类似于ul=>li关系 我已经成功地将父JSON数组绑定到$scope.parents变量,并且可以在父变量上重复。 但是,当我从承诺的结果向$scope.parents.children添加子对象时,我在视图中什么也得不到 我的控制器代码如下: departmentModule.controller(“departmentController”,功能($scope,departmentService){ $scope.parents=

我正在努力创建一个角度模型。该模型基本上是一种父子关系,类似于ul=>li关系 我已经成功地将父JSON数组绑定到$scope.parents变量,并且可以在父变量上重复。 但是,当我从承诺的结果向$scope.parents.children添加子对象时,我在视图中什么也得不到

我的控制器代码如下:

departmentModule.controller(“departmentController”,功能($scope,departmentService){
$scope.parents=[];
$scope.tempArr=[]

//Load initial root/parent structure departmentService.getParents(getSelectedEventId()).then(function (result) { $scope.parents = result; $scope.bindChildNodes() }); //loop through parent structure and get child nodes 1 level deep for initial load $scope.bindChildNodes = function () { for (var i = 0; i < $scope.parents.length; i++) { var assignmentId = $scope.parents[i].ID; $scope.parents[i].children = []; departmentService.getChildren(getSelectedEventId(), assignmentId).then(function (result) { //i would send result to children here, but this function doesnt have access to the i var to know what parent the children belong too.. $scope.tempArr = result; }); $scope.parents[i].children = $scope.tempArr; } } });
//加载初始根/父结构 departmentService.getParents(getSelectedEventId())。然后(函数(结果){ $scope.parents=结果; $scope.bindChildNodes() }); //循环父结构,并获得初始加载的子节点1级深度 $scope.bindChildNodes=函数(){ 对于(变量i=0;i<$scope.parents.length;i++){ var assignmentId=$scope.parents[i].ID; $scope.parents[i]。children=[]; getChildren(getSelectedEventId(),assignmentId)。然后(函数(结果){ //我会在这里将结果发送给子对象,但此函数没有访问i变量的权限,无法知道子对象属于哪个父对象。。 $scope.tempArr=结果; }); $scope.parents[i]。children=$scope.tempArr; } } }); 当我将$scope.tempArr分配给其父级的children属性:$scope.parents[i].children时,它会以某种方式丢失其值-因此$scope.parents[0]的console.log。children是一个空数组。 有什么想法或帮助吗?为什么我不能将JSON对象分配给范围变量的子属性?
提前非常感谢。

这是因为您在定义bindChildNodes()之前(在plunkr中)调用了它吗?天哪,它似乎解决了问题-我将尝试我的真实示例,看看它是否解决了问题。。漂亮的皮卡az7ar!在使用之前,我假设了角度“加载”函数。。你会重建这个函数吗?再次感谢..嘿,你修好了,伙计-我真不敢相信事情会这么简单。我必须记得先把函数按角度排序。。如果有人愿意传播ng的爱,我仍然很想知道一个更好的方法来做上述事情……谢谢!