angular-material-6 - StaticInjectorError(AppModule)[MatDialogTitle -> MatDialogRef]

标签 angular-material-6 angular-material-7

我熟悉这个错误,但我是在更新到 Angular Material 6.4.7 后才开始看到这个错误的。

我所有的模块都引用我自己的 MaterialModule,它导出 MatDialogModule。我没有为 MatDialogRef 设置任何提供程序 - 以前不需要。

[MatDialogTitle -> MatDialogRef] 是怎么回事?这是什么意思?

一切似乎在开发和生产构建中都运行良好。我不知道是什么原因造成的。

有没有办法追溯到某些东西??

谢谢

core.js:1673 ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[MatDialogTitle -> MatDialogRef]: 
  StaticInjectorError(Platform: core)[MatDialogTitle -> MatDialogRef]: 
    NullInjectorError: No provider for MatDialogRef!
Error: StaticInjectorError(AppModule)[MatDialogTitle -> MatDialogRef]: 
  StaticInjectorError(Platform: core)[MatDialogTitle -> MatDialogRef]: 
    NullInjectorError: No provider for MatDialogRef!
at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (core.js:1062)
at resolveToken (core.js:1300)
at tryResolveToken (core.js:1244)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:1141)
at resolveToken (core.js:1300)
at tryResolveToken (core.js:1244)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:1141)
at resolveNgModuleDep (core.js:8369)
at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (core.js:9057)
at resolveDep (core.js:9422)
at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (core.js:1062)
at resolveToken (core.js:1300)
at tryResolveToken (core.js:1244)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:1141)
at resolveToken (core.js:1300)
at tryResolveToken (core.js:1244)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:1141)
at resolveNgModuleDep (core.js:8369)
at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (core.js:9057)
at resolveDep (core.js:9422)
at resolvePromise (zone.js:814)
at resolvePromise (zone.js:771)
at zone.js:873
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
at Object.onInvokeTask (core.js:3811)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
at drainMicroTaskQueue (zone.js:595)
at ZoneTask.push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask [as invoke] (zone.js:500)
at invokeTask (zone.js:1540)

最佳答案

更新:所以对于我的问题,我能够使用这个 Bug 问题 [ https://github.com/angular/material2/issues/8419] 中的提供者来解决它。 .我将以下两行添加到我的 app.module 提供者列表中:

{ provide: MatDialogRef, useValue: {} },
{ provide: MAT_DIALOG_DATA, useValue: [] },

错误是指测试问题,但对我来说,我有一个 MatDialog 可以工作,但另一个会抛出错误。

希望这有帮助,adym

关于angular-material-6 - StaticInjectorError(AppModule)[MatDialogTitle -> MatDialogRef],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52885991/

相关文章:

angular6 - 使用 <mat-icon> 指令在 Angular 6 中使用 Angular Materials 设置 FontAwesome 5

css - 如何在 mat-h​​orizo​​ntal-stepper 中为不同形式设置不同宽度

angular - MatTabNavBar 未显示箭头

typescript - 如何使用角度 Material 树以角度 6 保存选中的节点?

javascript - 获取 MatSelectionList 的多个列表的选定选项 - Angular 6

html - 在 Angular Material 中隐藏来自 mat-form-field 的箭头

angular7 - 错误 TypeError : jit_nodeValue_11(. ..) 不是 Object.eval 中的函数 [作为 handleEvent] (HomeComponent.html:77)

Angular 形 Material 步进器在选择更改之前并防止某些条件下的步进变化

angular - 如何更改 Angular Material Datepicker 主题?

Angular Material : mat-drawer-container not showing backdrop with multiple mat-drawer