无法解析angular 7中MatDialogRef的所有参数

无法解析angular 7中MatDialogRef的所有参数,angular,angular-material,Angular,Angular Material,我试图在angular中实现对话框弹出。我一次又一次地犯同样的错误。无法解析MatDialogRef:?,?,?,?的所有参数 我要做的是从标题上的图标以对话框窗口的形式打开登录 我的代码如下: app.module.ts 从“@angular/platform browser”导入{BrowserModule}; 从“@angular/core”导入{NgModule}; 从“./app.component”导入{AppComponent}; 从“./modules/main/header/h

我试图在angular中实现对话框弹出。我一次又一次地犯同样的错误。无法解析MatDialogRef:?,?,?,?的所有参数

我要做的是从标题上的图标以对话框窗口的形式打开登录

我的代码如下:

app.module.ts

从“@angular/platform browser”导入{BrowserModule}; 从“@angular/core”导入{NgModule}; 从“./app.component”导入{AppComponent}; 从“./modules/main/header/header.component”导入{HeaderComponent}; 从“./modules/login/login.component”导入{LoginComponent}; 从“./app routing.module”导入{AppRoutingModule}; 从“@angular/material”导入{MAT_DIALOG_DEFAULT_选项、MatDialogModule、MatDialogRef}; 从'@angular/common/http'导入{HttpClientModule}; @NGD模块{ 声明:[ 应用组件, 头部组件, LoginComponent, ], 进口:[ 浏览器模块, 批准模块, HttpClientModule, MatDialogModule ], 入口组件:[ 登录组件 ], 提供程序:[{provide:MAT\u DIALOG\u DEFAULT\u选项,useValue:{hascardback:false}},MatDialogRef], 引导:[AppComponent] } 导出类AppModule{} header.component.ts

从“@angular/core”导入{Component,OnInit}; 从“../../login/login.component”导入{LoginComponent}; 从“@angular/material”导入{MatDialog}; @组成部分{ 选择器:“应用程序标题”, templateUrl:'./header.component.html', 样式URL:['./header.component.css'], } 导出类HeaderComponent在Init上实现{ logoOriginal='assets/logo/logo.png'; logoHovered='assets/logo/logo hovered.png'; 标志:字符串; 构造函数公共对话框:MatDialog{} 恩戈尼特{ this.logo=this.logo原件; } OnMouseCenter{ this.logo=this.logo悬停; } 请假{ this.logo=this.logo原件; } openDialog:void{ const dialogRef=this.dialog.openLoginComponent{ 宽度:'250px', }; dialogRef.afterClosed.SubscriberResult=>{ console.log“对话框已关闭”; }; } } login.component.ts

从“@angular/core”导入{Component,Inject,OnInit}; 从“@angular/material”导入{MAT_DIALOG_DATA,MatDialogRef}; @组成部分{ 选择器:“应用程序登录”, templateUrl:'./login.component.html', 样式URL:['./login.component.css'], } 导出类登录组件{ 建造师 公共dialogRef:MatDialogRef{} onNoClick:void{ 此.dialogRef.close; } } 请帮我解决这个问题。我已经参考了所有可用的答案,但没有一个解决了我的问题。

MatDialogRef不是提供者,而是参考。将其从app.module.ts中的提供商列表中删除:


不应该是构造函数中的公共dialogRef:MatDialogRef?@Fateme Fazli我已经在login.component.ts的构造函数中添加了它。您是否建议我也将其添加到header.component.ts类的构造函数中。
providers: [{provide: MAT_DIALOG_DEFAULT_OPTIONS, useValue: {hasBackdrop: false}}, MatDialogRef],