错误 NG6001:类'EaZimmerkatDialogComponent'列在 NgModule "AppModule"的声明中,但不是指令,而是组件



我想为我的页面创建一个对话框。在我创建组件并启动应用程序之后,它返回了两个错误:

错误:src/app/app.module。[ts:39:5]- error NG6001: EaZimmerkatDialogComponent类被列在NgModule AppModule的声明中,但它不是指令、组件或管道。要么把它从NgModule的de中移除

错误:src/app/dialog/ea-zimmerkat-dialog/ea-zimmerkat-dialog.component.ts:14:5-错误NG1005: Unexpected decorator inject on parameter.

我无法解释和找到代码中的错误。

src/app/app.module.ts:

import {EaZimmerkatDialogComponent} from "./dialogs/ea-zimmerkat-dialog/ea-zimmerkat-dialog.component";
@NgModule({
declarations: [
AppComponent,
HomeComponent,
AboutComponent,
AGastComponent,
AZimmerComponent,
AZimmerkatComponent,
EaGastComponent,
EaZimmerComponent,
EaZimmerkatComponent,
GrundgeruestComponent,
EaZimmerkatDialogComponent,
],
imports: [
BrowserModule,
AppRoutingModule,
HttpClientModule,
BrowserAnimationsModule,
MatTableModule,
MatPaginatorModule,
MatSortModule,
MatOptionModule,
MatFormFieldModule,
MatSelectModule,
MatIconModule,
MatButtonModule,
MatInputModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }

src/app/对话框/ea-zimmerkat-dialog/ea-zimmerkat-dialog.component.ts:

import { Component, OnInit, inject} from '@angular/core';
import {MAT_DIALOG_DATA, MatDialogRef} from "@angular/material/dialog";
import {category} from "../../category";
@Component({
selector: 'app-ea-zimmerkat-dialog',
templateUrl: './ea-zimmerkat-dialog.component.html',
styleUrls: ['./ea-zimmerkat-dialog.component.css']
})
export class EaZimmerkatDialogComponent implements OnInit {
constructor(
public dialogRef: MatDialogRef<EaZimmerkatDialogComponent>,
@inject(MAT_DIALOG_DATA) public data: category) {}
ngOnInit(): void {
}
onNoClick(): void {
this.dialogRef.close();
}
}

在您尝试注入MAT_DIALOG_DATA令牌的EaZimmerkatDialogComponent中,您使用小写i@inject。试着用@Inject(用大写的I)代替。

要添加到Octavian的答案中,请确保导入了正确的装饰器,如下所示:

import {Inject} from '@angular/core';

节省你的调试时间:)

最新更新