[英]Change data in form control Angular
I have an Angular v6 application.我有一个 Angular v6 应用程序。 Here's my
FormGroup
这是我的
FormGroup
stepperForm: FormGroup;
constructor() {
this.stepperForm = new FormGroup({
apps: new FormControl(''),
params: new FormControl('', SpecifyDetailsStepComponent.isValidJsonValidatorFn()),
});
}
I have a method where I want to change the data in formControl
params
:我有一个方法,我想更改
formControl
params
的数据:
const stringData = JSON.stringify(jsonData);
this.stepperForm.setValue({
apps: new FormControl(''),
params: new FormControl(stringData, SpecifyDetailsStepComponent.isValidJsonValidatorFn()),
});
I have no error in the console but the data isn't changing at all.我在控制台中没有错误,但数据根本没有改变。
I need to be able to use the validator.我需要能够使用验证器。 Thank you
谢谢
You may simply do :你可以简单地做:
this.stepperForm.get('params').setValue(stringData);
And then to take immediate effect for validators.然后对验证者立即生效。
this.stepperForm.get("params").updateValueAndValidity();
Do via Form: this.stepperForm.get('FormControlName').setValue('WhateverData');
通过表单执行:
this.stepperForm.get('FormControlName').setValue('WhateverData');
Do via FormControl: this.formControl.setValue('whateverData');
通过 FormControl 执行:
this.formControl.setValue('whateverData');
You can set multiple values at once using below one您可以使用以下一个值一次设置多个值
this.stepperForm.setValue({
apps: 'newValue',
params: 'newValue',
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.