在Angular 9中,当使用嵌套的Form Builder Form Group时,有时会遇到"No provider for ControlContainer"的错误。这是由于Angular的表单模块在嵌套的Form Group中没有正确提供ControlContainer提供程序导致的。
要解决这个问题,你可以尝试以下方法:
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
FormsModule,
ReactiveFormsModule,
// other modules
],
// other configurations
})
export class YourModule { }
[formGroup]
来绑定FormGroup对象,并使用formControlName
或formGroupName
来绑定表单控件。
import { FormBuilder, FormGroup } from '@angular/forms';
@Component({
// component configurations
})
export class YourComponent {
myForm: FormGroup;
constructor(private formBuilder: FormBuilder) {
this.myForm = this.formBuilder.group({
nestedGroup: this.formBuilder.group({
nestedControl: ['']
})
});
}
}
通过执行上述步骤,你应该能够解决"No provider for ControlContainer"错误。