我有一个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]+$")])]
});
Run Code Online (Sandbox Code Playgroud)
我已经添加了一个"重置"功能,如下所示:
(click)="resetStdSearchForm()"
Run Code Online (Sandbox Code Playgroud)
那只是运行:
this._stdSearchForm.reset();
Run Code Online (Sandbox Code Playgroud)
这会重置表单,但会忽略FormBuilder组中定义的初始值.
这种行为是有意的吗?
重置表单后,我可以以编程方式设置"count"的值吗?我试过这样做:
this._stdSearchForm.value.count = 50;
Run Code Online (Sandbox Code Playgroud)
但这没有改变.
yur*_*zui 15
您可以尝试以下方法:
this._stdSearchForm.setValue({ count: 50});
Run Code Online (Sandbox Code Playgroud)
或者你也可以这样做:
this._stdSearchForm.reset({ count: 50});
Run Code Online (Sandbox Code Playgroud)
该reset方法重置FormGroup.这意味着默认情况下:
| 归档时间: |
|
| 查看次数: |
7663 次 |
| 最近记录: |