我正在尝试使用 AngularJS 构建一个对象数组。
首先我只从 1 个对象开始。当用户单击按钮时,它会向我的数组添加一个对象。
这是正在工作的按钮部分;
HTML:
<button ng-click="ajoutForme()" type="button" class="btn btn-default">+</button>
Angular :
$scope.ajoutForme = function(){
$scope.nbrForme++;
}
这按预期工作,我可以看到 nbrForme 在页面上递增。
但是这个按钮实际上是在我的表格中添加一行要填充的内容。因此,每次单击该按钮时,我都想在表中插入一个新行。
我执行以下操作;
Angular :
$scope.row = [];
$scope.$watch('nbrForme', function() {
for(i=0; i<nbrForme; i++){
$scope.row.push({
id: i
});
}
});
因为我正在观看nbrForme
。每次按下按钮时,都会在数组 row
内创建一个新对象。
我在页面上显示 row
数组以查看更改,我这样做:
HTML:
行 = {{row}}
因此,在按下按钮之前,我只有一个 id 为 0 的对象; 每次按下按钮时,我都可以看到新对象被添加到数组中,但 id 始终为 0。
所以我得到的输出如下:
row = [{"id":0},{"id":0},{"id":0},{"id":0},{"id":0}]
所以我想知道为什么 var i
没有增加。
最佳答案
这样做:
$scope.nbrForme = 0;
$scope.row = [];
$scope.ajoutForme = function(){
$scope.row.push({
id: $scope.nbrForme++
});
}
关于javascript - AngularJS Json 对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35962369/