Angular 未在IE 11中打开MatDialog

Angular 未在IE 11中打开MatDialog,angular,angular-material,Angular,Angular Material,我的项目中的所有对话框都不会在IE11中为我部署的代码打开,但在本地IE中运行时可以正常工作。它们都遵循相同的代码 component.html <button mat-raised-button color="accent" class="accent" type="button" (click)="openNewCaseModal()" [disabled]="disableSubmit">{{ 'CASES.createCase' | translate }}</butt

我的项目中的所有对话框都不会在IE11中为我部署的代码打开,但在本地IE中运行时可以正常工作。它们都遵循相同的代码

component.html

<button mat-raised-button color="accent" class="accent" type="button" (click)="openNewCaseModal()" [disabled]="disableSubmit">{{ 'CASES.createCase' | translate }}</button>
}

dialog.component.ts

  openNewCaseModal(row) 

const dialogRef = this.dialog.open(CaseComponent, {
  width: '75%',
  data: this.caseData
});
dialogRef.afterClosed().subscribe(result => {
  if (result === 'submitted') {
    this.caseCreated.emit();
    this.snackbar.open('Case Created', '', { duration: 2000, verticalPosition: 'top' } );
  } else if (result === 'error submitted') {
    this.snackbar.open('Error Creating Case. Please Try Again.', '', { duration: 2000, verticalPosition: 'top' });
  }
});
constructor(
 private caseService: CasesService,
 private sidebarService: SidebarService,
 private dialog: MatDialogRef<CaseComponent>,
 private fb: FormBuilder,
 private snackbar: MatSnackBar,
 @Inject(MAT_DIALOG_DATA) public data: any) {
}
构造函数(
私人案件服务:案件服务,
私人侧边栏服务:侧边栏服务,
专用对话框:MatDialogRef,
私人fb:FormBuilder,
私人小吃店:Matsnakbar,
@注入(MAT_对话框_数据)公共数据:任意){
}
当我尝试打开对话框时,IE控制台中的错误

错误:StaticInjectorError[e-> 函数()

静态注入错误(平台:核心)[e-> 函数()

NullInjectorError:没有的提供程序 函数()

看起来这些错误是指我正在调用以打开对话框的this.dialog.open()函数。此外,我只能在部署的代码中重现它,这使得调试变得困难


任何帮助/建议都将不胜感激。

问题在于pollyfills.ts文件中缺少pollyfills

我缺少以下pollyfill导入:

  • 导入“核心js/es6/弱映射”
  • 导入“core js/es7/reflect”
我的猜测是,在错误中:

静态注入错误(平台:核心)[e-> 函数()

(平台:核心)部分指的是核心js。没有其他迹象表明这是正确的,但对话框现在正在工作


感谢@yurzui对错误排除的建议

问题在于pollyfills.ts文件中缺少pollyfills

我缺少以下pollyfill导入:

  • 导入“核心js/es6/弱映射”
  • 导入“core js/es7/reflect”
我的猜测是,在错误中:

静态注入错误(平台:核心)[e-> 函数()

(平台:核心)部分指的是核心js。没有其他迹象表明这是正确的,但对话框现在正在工作


感谢@yurzui对错误排除的建议

您是否包括ie特定的多填充物?是的,多填充物也包括在内。您能否针对该问题设置最低限度的github回购协议,以便我们可以对其进行测试?它可能与角度、材质或cli版本有关。我的代码在本地运行良好,这是典型的情况。本地IE对话框可以正常打开,但是部署的项目抛出了这些错误而没有打开对话框。此外,部署的代码在所有其他浏览器中都工作正常。您是否尝试在本地运行构建版本?是否包含ie特定的多填充?是的,多填充也包括在内。您能否针对该问题设置最小github repo,以便我们可以测试它?它可能与角度、材质或cli版本有关。我的代码在本地运行良好,这是典型的情况。本地IE对话框可以正常打开,但是部署的项目抛出了这些错误而没有打开对话框。此外,部署的代码在所有其他浏览器中都工作正常。您是否尝试在本地运行内置版本?我们缺少es7/reflect polyfill,但似乎不需要es6/weak映射。我们缺少es7/reflect polyfill,但似乎不需要es6/weak映射。