Я перенаправляю URL-адрес с параметрами запроса и присваиваю значения из параметров запроса форме, используя setValue, но значение не отображается изначально, а отображается после обновления.
Получение значений из параметров запроса и присвоение форме:
constructor(private fromBuilder: FormBuilder, private _API: RestService, private storageService: StorageService, private route: ActivatedRoute) {
if (!this.formsInitialized) this.initForms()
this.route.queryParams.subscribe((params) => {
if (params.user) {
this.registerForm['controls']['cpName'].setValue(JSON.parse(decodeURIComponent(params.user)).name, { onlySelf: false })
this.registerForm['controls']['cpEmail'].setValue(JSON.parse(decodeURIComponent(params.user)).email, { onlySelf: false })
}
})
}
ngOnInit() {
}
initForms() {
this.formsInitialized = true
this.registerForm = this.fromBuilder.group({
cpName: ['dfdfd', [Validators.required, Validators.minLength(4), Validators.maxLength(30), Validators.pattern(this.namePattern)]],
cpEmail: ['', [Validators.required, Validators.pattern(this.emailPattern)]],
dname: ['', [Validators.required, Validators.maxLength(15), Validators.pattern(this.domainPattern)]],
bname: ['', [Validators.required, Validators.maxLength(50), Validators.pattern(this.brandPattern)]],
password: ['', [Validators.required, Validators.minLength(6), Validators.maxLength(15)]],
token: [''],
googleId: [''],
imageUrl: [''],
});
}