【发布时间】:2019-03-01 17:15:55
【问题描述】:
我正在寻找两件事:
- 使用 Angularjs 将项目推送到嵌套数组中
- 了解它的具体工作原理。
我一直在寻找关于不同previous 主题的答案,但我没有找到解决方案。
实际上,我想使用添加项目按钮将 item 推送到 facture 对象 下的 items 数组 中。
这是我的控制器:
PlasmaCrm.controller('FacturesSoloController', function($scope, $stateParams, Facture ) {
Facture.get({ id: $stateParams.factureId }, function(data) {
$scope.facture = data;
});
$scope.ajouterItem = function(index, item){
$scope.facture.items[index].item.push({
description: 'Test'
});
}
});
这是我的数据结构(由我的 API 返回)
{
"id":10200,
"client_id":1,
"lead_id":1,
"courtedescription":"Description test",
"etat":"En attente",
"created_at":"2015-02-21 15:07:17",
"updated_at":"2015-02-21 15:07:17",
"items":[
{
"id":1,
"facture_id":10200,
"description":"Item num\u00e9ro 1",
"prix":"15.00",
"tps":"0.75",
"tvq":"1.50",
"grandtotal":"17.25",
"created_at":"2015-02-21 15:07:18",
"updated_at":"2015-02-21 15:07:18"
},
{
"id":2,
"facture_id":10200,
"description":"Deuxi\u00e8me item quoi",
"prix":"135.00",
"tps":"6.75",
"tvq":"13.47",
"grandtotal":"155.22",
"created_at":"2015-02-21 15:07:18",
"updated_at":"2015-02-21 15:07:18"
}
]
}
当然,我的 HTML 包含一个按钮:
<form ng-submit="ajouterItem(item)">
<button class="btn btn-primary">Ajouter un item</button>
</form>
实际上,当我按下按钮时出现错误(未定义)。怎么了?
【问题讨论】:
-
有趣的是,您的
ng-submit传入了一个参数,但您的函数需要(并尝试使用)index和item。也许item是未定义的? -
我无法读取未定义的属性“项目”
标签: javascript arrays angularjs angularjs-resource