【发布时间】:2019-09-03 09:11:46
【问题描述】:
我的组件中有一个对象,该对象中有一个数组,我想用ngModel 动态绑定它。一种方式绑定正在发生,但是当我进行一些更改或添加新的数组元素时,模型不会更新。
HTML部分
<div class="form-group row">
<label class="col-lg-6 pt-2 label-header" >Group </label>
<button type="button" class="col btn btn-success m-2" (click)="addFieldGroup($event)">Add Group</button>
<button type="button" class="col btn btn-danger m-2" (click)="deleteFieldGroup($event)">Delete Group</button>
<div class="mt-2 col-lg-12 group-name ">
<input *ngFor='let g of foo.general.group' type="text" class="form-control col-lg-12 general m-2" [(ngModel)]="g" value="{{ g }}" [ngModelOptions]="{standalone: true}">
</div>
</div>
组件部分
foo = {
"general": {
"name": "sdfdf",
"group": ["sd","sdad","asdasdasd"]
}
addFieldGroup(event){
this.foo.general.group.push('');
}
deleteFieldGroup(event){
this.foo.general.group.pop();
}
ngModel 在单独的输入字段中呈现“sd”、“sdad”、“asdasdasd”,但在进行一些更改或添加新的数组元素时,模型并没有改变。我只得到以前的模型,即。
"general": {
"name": "sdfdf",
"group": ["sd","sdad","asdasdasd"]
}
但是 name 字段可以完美地使用两种方式绑定。
【问题讨论】: