![](/img/trans.png)
[英]Angular Jest Testing a component that opens a MatDialog - open is not a function
[英]MatDialog Angular open component?
有对话框: public dialog: MatDialog
和打开对话框的方法open():
this.dialog.open(MyDialogComponent, conf);
open()
描述是:
open<T, D = any, R = any>(componentOrTemplateRef: ComponentType<T> | TemplateRef<T>, config?: MatDialogConfig<D>): MatDialogRef<T, R>;
这是否意味着我应该将第一个参数作为实例组件传递?
为什么在示例中我们使用MyDialogComponent
而不是new MyDialogComponent()
? 如果MyDialogComponent
在构造函数中具有依赖项注入怎么办?
对象对话框将动态创建该对象,他将为您注入依赖项
该组件作为示例, AService
将由DI系统注入
@Component({
selector: 'dialog-overview-example-dialog',
templateUrl: 'dialog-overview-example-dialog.html',
providers: [AService]
})
export class DialogOverviewExampleDialog {
constructor(
public dialogRef: MatDialogRef<DialogOverviewExampleDialog>,
@Inject(MAT_DIALOG_DATA) public data: DialogData , public AService:AService ) {
console.log(AService)
}
onNoClick(): void {
this.dialogRef.close();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.