gpt4 book ai didi

forms - Angular 2 : Resetting form ignores initial value

转载 作者:太空狗 更新时间:2023-10-29 17:13:09 25 4
gpt4 key购买 nike

我有一个 Angular 2 应用程序,我在其中为某些输入设置默认值,如下所示:

this._stdSearchForm = this._formBuilder.group({
count: [{value: 50, disabled: false}, Validators.compose([Validators.required, Validators.minLength(1), Validators.maxLength(3), Validators.pattern("^[0-9]+$")])]
});

我已经实现了这样的“重置”功能:

(click)="resetStdSearchForm()"

然后就可以运行了:

this._stdSearchForm.reset();

重置表单,但忽略 FormBuilder 组中定义的初始值。

这种行为是故意的吗?

我可以在重置表单后以编程方式设置“count”的值吗?我试过这样做:

this._stdSearchForm.value.count = 50;

但这并没有改变什么。

最佳答案

您可以尝试以下方法:

this._stdSearchForm.setValue({ count: 50});

或者您可以通过以下方式进行同样的操作:

this._stdSearchForm.reset({ count: 50});

reset方法重置 FormGroup 。这意味着默认情况下:

  • 该组和所有后代都被标记为原始
  • 该组和所有后代都标记为未修改
  • 所有后代的值将为空或空映射

关于forms - Angular 2 : Resetting form ignores initial value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39590069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com