如果没有与 angular 中的表单交互,则反应式表单不会绑定下拉列表
reactive forms not bind dropdown if no interaction with form in angular
我有一个包含 3 个下拉列表的表单,这个下拉列表从 API 获取数据
问题是如果我不点击下拉菜单,下拉菜单不会绑定数据(模糊任何表单中的字段)
我的HTML
<form [formGroup]="dropdownsForm" novalidate class="needs-validation">
<div class="dropdown">
<select class="form-control" formControlName="CountryName"
[attr.data-live-search]="true" style="width: 150px;" >
<option *ngFor="let Country of allCountrys" [value]="Country.id">
{{Country.title}}</option>
</select>
</div>
</form>
我的老师
allCountrys: DropDownListForLkpsDto[];
constructor(
private fb: FormBuilder,
private _countryService: CountryServiceProxy
) {
}
ngOnInit(): void {
this.dropdownsForm = this.fb.group(
{
CountryName: [""],
}
);
this._countryService.getAllCountrysForDDl().subscribe(result => {
this.allCountrys = result;
});
}
经过3天的搜索,我们终于找到了问题所在
在我的 ts 文件中,我有这一行
changeDetection: ChangeDetectionStrategy.OnPush
进入我的
@Component({ })
当我们删除 changeDetection 行时它工作正常
我有一个包含 3 个下拉列表的表单,这个下拉列表从 API 获取数据 问题是如果我不点击下拉菜单,下拉菜单不会绑定数据(模糊任何表单中的字段)
我的HTML
<form [formGroup]="dropdownsForm" novalidate class="needs-validation">
<div class="dropdown">
<select class="form-control" formControlName="CountryName"
[attr.data-live-search]="true" style="width: 150px;" >
<option *ngFor="let Country of allCountrys" [value]="Country.id">
{{Country.title}}</option>
</select>
</div>
</form>
我的老师
allCountrys: DropDownListForLkpsDto[];
constructor(
private fb: FormBuilder,
private _countryService: CountryServiceProxy
) {
}
ngOnInit(): void {
this.dropdownsForm = this.fb.group(
{
CountryName: [""],
}
);
this._countryService.getAllCountrysForDDl().subscribe(result => {
this.allCountrys = result;
});
}
经过3天的搜索,我们终于找到了问题所在
在我的 ts 文件中,我有这一行
changeDetection: ChangeDetectionStrategy.OnPush
进入我的
@Component({ })
当我们删除 changeDetection 行时它工作正常