如何修复无法绑定到 formControl 错误
how to fix can't bind to formControl error
谁能帮我解释为什么它说“无法绑定到 'formControl',因为它不是 'input' 的已知 属性。”即使我已经在我的模块中导入,并且我还有另一个组件使用 FormControl、FormGroup 或两者,但它并没有给我这种错误,但这个错误。我不太确定为什么会不断收到此错误。
我已经在 app.module.ts 文件中导入了 ReactiveFormsModule。我可以在其他组件中使用 formControl 但不确定为什么我不能在这个组件中使用。
HTML
<div class="component">
<mat-chip-list *ngIf="editMode" #chipList >
<div>
<mat-chip> </mat-chip>
<div>
<div >
<input matInput #input [formControl]="tagCtrl2" [(ngModel)]="tagIn" placeholder="Select or Create a tag" [matAutocomplete]="auto"
(focusout)="hideTagInput()" (keyup.enter)="addTag()"(keyup.escape)="hideTagInput()"
(keydown.backspace)="$event.stopPropagation();" (keydown.space)="$event.stopPropagation();" [matChipInputFor]="chipList" />
</div>
<mat-autocomplete #auto="matAutocomplete" (optionSelected)="selected($event)">
<mat-option *ngFor="let tag of filteredTags | async" [value]="tag">
{{tag}}
</mat-option>
</mat-autocomplete>
<mat-chip-list>
</div>
TS
import { FormControl } from '@angular/forms';
export class TagsComponent implements OnInit {
tagCtrl2 = new FormControl();
在您的模块文件中,您应该像这样将此 ReactiveFormsModule 添加到您的模块文件中:
import { ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
ReactiveFormsModule
]
})
export class CommonModule {}
试试这个
<input type="text" [formControl]="form.get('tagCtrl2')">
或者试试这个
<input type="text" formControlName="tagCtrl2">
你导入了吗MatAutocompleteModule
?
谁能帮我解释为什么它说“无法绑定到 'formControl',因为它不是 'input' 的已知 属性。”即使我已经在我的模块中导入,并且我还有另一个组件使用 FormControl、FormGroup 或两者,但它并没有给我这种错误,但这个错误。我不太确定为什么会不断收到此错误。
我已经在 app.module.ts 文件中导入了 ReactiveFormsModule。我可以在其他组件中使用 formControl 但不确定为什么我不能在这个组件中使用。
HTML
<div class="component">
<mat-chip-list *ngIf="editMode" #chipList >
<div>
<mat-chip> </mat-chip>
<div>
<div >
<input matInput #input [formControl]="tagCtrl2" [(ngModel)]="tagIn" placeholder="Select or Create a tag" [matAutocomplete]="auto"
(focusout)="hideTagInput()" (keyup.enter)="addTag()"(keyup.escape)="hideTagInput()"
(keydown.backspace)="$event.stopPropagation();" (keydown.space)="$event.stopPropagation();" [matChipInputFor]="chipList" />
</div>
<mat-autocomplete #auto="matAutocomplete" (optionSelected)="selected($event)">
<mat-option *ngFor="let tag of filteredTags | async" [value]="tag">
{{tag}}
</mat-option>
</mat-autocomplete>
<mat-chip-list>
</div>
TS
import { FormControl } from '@angular/forms';
export class TagsComponent implements OnInit {
tagCtrl2 = new FormControl();
在您的模块文件中,您应该像这样将此 ReactiveFormsModule 添加到您的模块文件中:
import { ReactiveFormsModule } from '@angular/forms';
@NgModule({
imports: [
ReactiveFormsModule
]
})
export class CommonModule {}
试试这个
<input type="text" [formControl]="form.get('tagCtrl2')">
或者试试这个
<input type="text" formControlName="tagCtrl2">
你导入了吗MatAutocompleteModule
?