如果在 Angular 6 中使用表单时遇到选择选项更新不正确的问题,可以尝试以下解决方法:
示例代码:
setValue()
或 patchValue()
方法来更新表单控件的值。示例代码:
// 更新选项列表
updateOptions(newOptions: any[]) {
this.options = newOptions;
// 手动触发表单控件的值更改
this.form.controls['selectedOption'].setValue(this.selectedOption);
}
ChangeDetectorRef
来手动触发变更检测。有时在更新选项后,Angular 的变更检测机制可能无法自动检测到变化,可以手动调用 detectChanges()
方法来触发变更检测。示例代码:
import { Component, ChangeDetectorRef } from '@angular/core';
constructor(private cdr: ChangeDetectorRef) {}
// 更新选项列表
updateOptions(newOptions: any[]) {
this.options = newOptions;
// 手动触发变更检测
this.cdr.detectChanges();
}
通过以上解决方法,应该能够解决 Angular 6 中表单选择选项更新不正确的问题。