当没有验证器时,Angular 会根据需要不断返回表单控制

问题描述 投票:0回答:1

这就是我所做的,我还使用 DeepCopy 来确保不会发生奇怪的通过引用传递的情况

const formGroup = this.allowances()
    formGroup.removeControl('allowanceEndDate')
    const newFormGroup = deepCopy(formGroup)

    newFormGroup.addControl(
      'allowanceEndDate',
      new FormControl(null, {
      nonNullable: false,
      validators: []})
    )

    console.log(newFormGroup)

我不断收到此消息 - required 仍设置为 true...而它应该只显示错误:null:

enter image description here

原始的 validator.required 也不在那里,所以仍然不明白为什么上面说 required=true,是否还有另一个标志我需要以编程方式设置?

enter image description here

angular
1个回答
0
投票

您的

formcontrol
的状态是
invalid
,您可以编写此代码进行特定控制:

allowanceEndDate.reset();

则控制状态为有效,错误为空。

© www.soinside.com 2019 - 2024. All rights reserved.