angular - ngModel 不能用于在运行时使用父 formGroup 指令注册表单控件
问题描述
我不知道为什么会收到此错误消息。这是我的html:
<form [formGroup]="insert" (ngSubmit)="onSubmit(insert.value)">
<div class="ui-g-12 ui-md-12 ui-lg-12">
<div class="ui-g-5 ui-g-offset-1 ui-md-4 ui-md-offset-1 ui-lg-4 ui-lg-offset-1">
<span >name</span>
</div>
<div class="ui-g-6 ui-md-4 ui-lg-4">
<input type="text" pInputText [(ngModel)]="name_student" formControlName="name_student" />
</div>
</div>
...
</form>
在 y .ts 我做:
insert: FormGroup;
ngOnInit(): void {
//gestione degli errori dopo il submit
this.insert= this.fb.group({
'name_student': new FormControl('', Validators.required)
});
我得到:
ngModel cannot be used to register form controls with a parent formGroup directive. Try using formGroup's partner directive "formControlName" instead. Example:
任何人都可以帮助我吗?
解决方案
尝试这个
<form [formGroup]="insert" (ngSubmit)="onSubmit(insert.value)">
<div class="ui-g-12 ui-md-12 ui-lg-12">
<div class="ui-g-5 ui-g-offset-1 ui-md-4 ui-md-offset-1 ui-lg-4 ui-lg-offset-1">
<span >name</span>
</div>
<div class="ui-g-6 ui-md-4 ui-lg-4">
<input type="text" pInputText [(ngModel)]="name_student" formControlName="name_student" [ngModelOptions]="{standalone: true />
</div>
</div>
...
</form>
你应该把[ngModelOptions]="{standalone: true