我在我的 html 中设置了一个由 ng-click 事件调用的方法:
<div ng-repeat="section in model.sections">
<a ng-click="updateSection($index)">
</div>
然后在我的 javascript 文件中,我有以下服务:
.factory('Sections', function($resource){
return{
onUnits: $resource('/api/sections/:uuid/units', {uuid:'@sectionUUID'}, {
get: {method: 'GET', params:{uuid: '@uuid'}, isArray:true}
}
}
}
从 html 调用的方法是:
$scope.updateSection = function(index){
$scope.model.sections[index].sectionUnits = Sections.onUnits.get({uuid: $scope.model.sections[index].sectionUUID}
,console.log($scope.model.sections[index])
);
}
在此更新发生之前,
$scope.model.sections[0].sectionUnits == ['d1','d2']
这是与此部分相关联的单位 ID 的列表。unit
这个方法基本上用看起来像这样的真实对象更新这个列表:
.sectionUnits = [{unitUUID: 'd1',
materials: ['m1','m2','m3']
}, {... }]
在我的浏览器中,上面的代码返回了section
我正在寻找的更新后的对象,所有unit
对象都嵌套在section
.
但是,我真正想要的是实现一个回调,该回调获取materials
与此更新对象中的单元相关联的所有 id 列表section
,并检索它们。
如果我尝试这样做,并改为使用以下回调,我得到的列表sectionUnits
仍然只是 id:
$scope.updateSection = function(index){
$scope.model.sections[index].sectionUnits = Sections.onUnits.get({uuid: $scope.model.sections[index].sectionUUID}
,console.log($scope.model.sections[index].sectionUnits)
);
}
我查看了很多 SO 线程和原始文档,但我有点卡在这一点上。
谢谢!