【问题标题】:TS2305: Module './@angular/material/material' has no exported member 'MaterialModule' [duplicate]TS2305:模块“./@angular/material/material”没有导出成员“MaterialModule”[重复]
【发布时间】:2017-10-27 09:57:29
【问题描述】:

我相信这个错误是由于材料模块从版本 10 更新到 12 引起的,但我没有找到解决这个问题的方法。 当前材质模块版本:

"@angular/material": "^2.0.0-beta.12"

在 package-lock.json 中:

"@angular/material": {
  "version": "2.0.0-beta.12",
  "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.12.tgz",
  "integrity": "sha1-cbbQt7AhiR5dDjaIwdS9eMdFf1g=",
  "requires": {
    "tslib": "1.8.0"
  }
},

【问题讨论】:

  • 发布你的 app.module.ts

标签: angular angular-material


【解决方案1】:

出于性能原因,MaterialModule 已与角材料版本2.0.0-beta.11 一起删除(请参阅他们的changelog)。从 beta 11 开始,您必须分别导入您需要的每个材质模块。当然,您也可以创建一个专用模块,将所有材料模块放入其中并将模块导入您的根模块(或您将使用的任何模块)。

有关更多详细信息,您可能还想参考他们的roadmap,引用:

我们发现,就目前世界上的 tree-shaking 状态而言,使用 NgModule 之类的聚合 MaterialModule 会导致工具无法消除未使用组件的代码。

为了确保用户最终获得尽可能小的代码大小,我们将弃用 MaterialModule,并将在后续版本中删除。

要替换 MaterialModule,用户可以在其应用程序中创建自己的“材料”模块(例如,GmailMaterialModule),该模块仅导入应用程序中实际使用的组件集。

【讨论】:

    猜你喜欢
    • 2021-11-07
    • 2018-03-09
    • 2018-05-22
    • 2018-03-19
    • 2022-01-18
    • 2020-10-30
    • 2018-09-10
    • 2021-03-25
    • 2017-03-29
    相关资源
    最近更新 更多