Я определил форму в Angular2 следующим образом:
this.form = this._formBuilder.group({
password: ['',Validators.required],
passwordRepeat: ['',Validators.required]
});
куда
public form:ControlGroup
Что хорошо, так как:
_formBuilder = FormBuilder.group(controlsConfig: {
[key: string]: any;
}, extra?: {
[key: string]: any;
}): modelModule.ControlGroup
он возвращает ControlGroup
.
Теперь в моем компоненте я использую:
this.user.password = this.passwordEditForm.controls.password.value;
Что выдает мне ошибку компиляции:
error TS2339: Property 'password' does not exist on type '{ [key: string]: AbstractControl; }'.
Похоже на ошибку. Любые идеи о том, как я могу преодолеть эту проблему? Я пытался сделать так:
export interface FormControlGroup extends ControlGroup{
password:any;
}
Но это дает мне еще больше ошибок:
error TS1206: Decorators are not valid here.
app/form.component.ts(30,9): error TS2322: Type 'ControlGroup' is not assignable to type 'FormControlGroup'.
Property 'password' is missing in type 'ControlGroup'.
app/form.component.ts(37,61): error TS2339: Property 'password' does not exist on type '{ [key: string]: AbstractControl; }'.