我正在尝试使用其父组合中的相关数据填充组合。我将代码留在下面:
HTML
<select class="form-control" (ngModelChange)="onChange($event)">
<option disabled="true">{{ txtOptDefault }}</option>
<option *ngFor="let arrCorp of selCorp" value="{{ arrCorp.corp_id }}">
<!-- Here I choose 2000. It prints 2000 but nothing happens -->
{{ arrFiles.corp_id }}. {{ arrCorp.corpname }}</option>
</select>
<select class="form-control">
<option disabled="true">{{ txtOptDefault }}</option>
<option *ngFor="let arrFiles of selFiles" value="{{ arrFiles.file_id }}">
{{ arrFiles.file_id }}. {{ arrFiles.filename }}</option>
</select>
TS
onChange(selection) {
if (selection === 2000) {
this.selFiles= [{ 'file_id': id, 'filename': filename },];
} else {
this.selFiles = [];
}
}
我正在尝试根据公司选择填充arrFiles,在这种情况下为2000。
如果在选择2000时添加console.log,它将正确打印结果,但是selFiles不会被填充。我想ngFor仅在页面加载时执行,如何使其与我的代码一起使用?
答案 0 :(得分:2)
请使用(change)代替(ngModelChange)
和
onChange(selection) {
if (selection.target.value === 2000) {
this.selFiles= [{ 'file_id': id, 'filename': filename },];
} else {
this.selFiles = [];
}
}