You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行ng serve命令报错:@angular/core未找到'ɵɵdefineInjectable'导出项

报错原因
  • 核心为ng2-charts版本与当前项目的Angular版本不兼容。ɵɵdefineInjectable是Angular 6及以上版本才提供的内部注入API,若你使用的Angular版本低于要求,或是安装的ng2-charts版本高于当前Angular可支持的范围,就会触发该导出缺失的报错。
  • 不同版本ng2-charts对Angular的版本要求有明确限制:ng2-charts v3+要求Angular版本≥13,ng2-charts v2要求Angular版本≥9,只有ng2-charts v1支持Angular 6~8版本,版本匹配错误就会出现该警告。
解决方案
  1. 先确认当前项目的Angular版本,在项目根目录执行以下命令:
    ng version
    找到输出中@angular/core对应的版本号即可。
  2. 卸载当前已安装的不兼容版本依赖:
    npm uninstall ng2-charts chart.js
  3. 根据你的Angular版本安装匹配的依赖包,对应匹配规则如下:
  • Angular 14及以上:安装ng2-charts@4+ + chart.js@4
  • Angular 13:安装ng2-charts@3.x + chart.js@3
  • Angular 9~12:安装ng2-charts@2.x + chart.js@2.9
  • Angular 6~8:安装ng2-charts@1.x + chart.js@2.9
    比如你的项目为Angular 8版本,执行安装命令如下:
    npm install ng2-charts@1.6.0 chart.js@2.9.4
  1. 依赖安装完成后重新执行ng serve启动项目,报错即可消失。

内容的提问来源于stack exchange,提问作者Kundan Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:06:01