【问题标题】:TypeError: core.defineInjectable is not a function while using angular material/cdk in angular 4.3.2TypeError: core.defineInjectable 在 Angular 4.3.2 中使用 Angular Material/cdk 时不是一个函数
【发布时间】:2018-11-02 15:13:39
【问题描述】:

我想使用角度材质进度微调器并添加

import {MatProgressSpinnerModule} from '@angular/material';

在导入数组和组件中添加

尚未尝试使用选择器更新模板并删除它。在任何一种情况下都会出现错误。

我正在使用 system.config.js,并为所有角度材质和 cdk js 文件添加了贴图值。

使用 angular 4.3.2 和 angular material 最新版本。得到以下错误。

errors.ts:42 ERROR 错误:未捕获(承诺中):错误:TypeError: core.defineInjectable 不是函数 在评估 (http://localhost:8000/node_modules/@angular/cdk/bundles/cdk-bidi.umd.js:89:62) 在 Object.eval (http://localhost:8000/node_modules/@angular/cdk/bundles/cdk-bidi.umd.js:91:2) 错误加载 http://localhost:8000/app/UMSClient/com/ipc/ums/modules/EnterpriseTree/Enterprise.module.js 在评估 (http://localhost:8000/node_modules/@angular/cdk/bundles/cdk-bidi.umd.js:89:62) 在 Object.eval (http://localhost:8000/node_modules/@angular/cdk/bundles/cdk-bidi.umd.js:91:2) 错误加载 http://localhost:8000/app/UMSClient/com/ipc/ums/modules/EnterpriseTree/Enterprise.module.js

可能出了什么问题?

谢谢,

【问题讨论】:

  • 我能问一下您为什么在 Angular 4 项目中使用 SystemJS 而不是 WebPack 吗?
  • 是已经用系统js构建的企业应用。我们计划改用 Webpack。

标签: javascript angular angular-cdk


【解决方案1】:

我在 Stackblitz 上使用 Angular Material 时遇到了这个错误,所以我刷新了依赖项并将 core-js 降级到 2.6.9

core-js @ 2.6.9

【讨论】:

    【解决方案2】:

    defineInjectable 是 Angular 6 唯一功能。您可能一直在使用最新版本的 Angular Material,它与您当前的版本 (4.3.2) 不兼容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-05
      • 1970-01-01
      • 2020-05-01
      • 2017-07-19
      • 1970-01-01
      • 1970-01-01
      • 2018-11-30
      • 2016-07-11
      相关资源
      最近更新 更多