我有我的对象
$scope.obj = {
id : 0,
name : 'parent',
childs : [{
obj_id : $scope.obj.id,
name : 'child1',
}, {
obj_id : $scope.obj.id,
name : 'child2',
}]
}
如果我用输入动态更改$ scope.obj的ID属性,它将不会更新我孩子的对象的obj_id值。
<input type="text" ng-model="obj.id" />
但是如果我在更新$ scope.obj.id值之后在childs
属性中添加了一个新对象
$scope.obj.childs.push({
obj_id : $scope.obj.id,
name : 'child3',
});
我最近child
对象推送的obj_id属性将使用输入设置$ scope.obj.id的新值。
提前谢谢。
答案 0 :(得分:1)
将父对象的id分配给数组中的子项时,它是复制的id的值。因此,输入标记上的ng-model根本不会绑定到子项的obj_id属性。
以下是对此问题的更全面的解释:
也许您需要的是每个子节点上引用父对象的属性?这样你就可以从任何子对象中获取父ID的内容。
$scope.obj = {
id : 0,
name : 'parent',
childs : []
};
$scope.obj.childs.push({
parent : $scope.obj,
name : 'child1',
});
$scope.obj.childs.push({
parent : $scope.obj,
name : 'child2',
});