请任何帮助 当我在我的代码中添加MatDialogRef时,我得到了他的错误“错误TS2707:通用类型'MatDialogRef'在1和2个参数之间的请求” 我尝试了很多解决方案,但它对我不起作用
errordialogue.ts:
从'@ angular / core'导入{Component,Inject,Injectable};从'@ angular / material'导入{MatDialogRef,MAT_DIALOG_DATA,MatDialog}; @Component({selector:'dialog-overview-example',templateUrl:'error-dialog.component.html'})export class ErrorDialogComponent {constructor(private dialogRef:MatDialogRef,@ Inject(MAT_DIALOG_DATA)public data:any){} public closeDialog(){this.dialogRef.close(); }}
module.ts;我在imports数组中添加dialogModule
导入:[BrowserModule,FormsModule,AppRouterModule,HttpModule,HttpClientModule,ReactiveFormsModule,CommonModule,BrowserAnimationsModule,MatDialog,MatDialogModule,MatDialogRef],
答案 0 :(得分:1)
错误是因为MatDialogRef
需要一个通用的签名组件类,即ErrorDialogComponent
试试这个
import {Component, Inject, Injectable} from '@angular/core';
import {MatDialogRef, MAT_DIALOG_DATA, MatDialog} from '@angular/material';
@Component({
selector: 'dialog-overview-example',
templateUrl: 'error-dialog.component.html'
})
export class ErrorDialogComponent {
constructor(private dialogRef: MatDialogRef<ErrorDialogComponent>, @Inject(MAT_DIALOG_DATA) public
data : any) { }
public closeDialog(){ this.dialogRef.close(); }
}
答案 1 :(得分:0)
除了'它不起作用'之外没有其他任何东西我可以给你这个答案:关注docs
答案 2 :(得分:0)
如果未启用“启用类型”脚本编译器,则设置中可能存在相同的问题。