【发布时间】:2019-12-12 03:25:56
【问题描述】:
我在 Angular 8 中有一个非常基本的选择选项输入控件。用户从下拉列表中选择一项,它会正确反映在下拉列表以及 ngModel 变量中。
但如果我以编程方式清空源数组,下拉菜单仍将旧值保留在 ngModel 中,并且角度验证显示控件处于“有效”状态。但是,由于源数组现在为空,因此下拉列表中未显示任何已选择的内容。
我希望ngModel 应该被重置并且控制应该处于无效状态,因为现在没有选择任何内容。
我的期望错了吗?还是我做错了什么?
以下是重现该行为的完整示例:
Angular 8:StackBlitz
更新 1:
我在 Angular 1 中创建了一个示例,该示例完全符合我的预期。如果在选项数组中找不到匹配的选项,AngularJS 会清除模型值。我的观点是,如果下拉列表是空的,那么用户会假设没有选择任何内容。然而,在 Angular2+ 的情况下,它在幕后持有旧模型值。
角度 1:StackBlitz
【问题讨论】:
标签: angular angular2-ngmodel select-options