首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当我试图升级角度时,为什么我会得到“没有导出成员”的错误?

当我试图升级角度时,为什么我会得到“没有导出成员”的错误?
EN

Stack Overflow用户
提问于 2021-04-07 14:00:17
回答 8查看 57K关注 0票数 18

The issue

我正试图从V9升级到V11,并且在处理以下错误时非常困难

Namespace node_module/@angular/core/core has no exported member ɵɵFactoryDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵInjectorDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵNgModuleDeclaration Namespace node_module/@angular/core/core has no exported member ɵɵɵComponentDeclaration

但我不太清楚这意味着什么,也不知道如何解决它。

我试过什么

我看过一个类似的问题:Ng发球@角形/核心/核心没有输出成员“eeFactoryDef”,这是我在这个问题上唯一能找到的线索,但它并没有真正帮助我。

我尝试删除整个node_modules文件夹并使用npm i重新安装npm依赖项。我也试过npm ci。我还试着添加

代码语言:javascript
复制
      "@angular/core/*": [
        "./node_modules/@angular/core/*"
      ]

代码语言:javascript
复制
      "@angular/*": [
        "./node_modules/@angular/*"
      ]

对我的tsconfig.json,但这也没有帮助。

我认为是问题

我对此一无所知,但我认为我的NPM依赖项的路径有问题,因为它引用了@angular/core/core,但是在我的node_modules中没有这样的文件夹。

如果我转到node_modules/@angular/core/core.d.ts文件,我认为它是/core/core路径,尽管我不确定,但是我也看到了同样的错误,这使我更加困惑,因为我认为这个问题是在角度和依赖之间,而不是在角度本身。

Package.json

代码语言:javascript
复制
{
  "name": "WorthaShot",
  "version": "0.0.3",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "build:prod": "ng build --prod",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "~12.0.0-next.7",
    "@angular/cdk": "^11.2.7",
    "@angular/common": "~12.0.0-next.7",
    "@angular/compiler": "~12.0.0-next.7",
    "@angular/core": "~11.2.8",
    "@angular/fire": "^6.1.4",
    "@angular/flex-layout": "^10.0.0-beta.32",
    "@angular/forms": "~12.0.0-next.7",
    "@angular/material": "^11.2.7",
    "@angular/platform-browser": "~12.0.0-next.7",
    "@angular/platform-browser-dynamic": "~12.0.0-next.7",
    "@angular/router": "~12.0.0-next.7",
    "@angular/service-worker": "~12.0.0-next.7",
    "@fortawesome/angular-fontawesome": "^0.8.2",
    "@fortawesome/fontawesome-common-types": "^0.2.35",
    "@fortawesome/fontawesome-svg-core": "^1.2.35",
    "@fortawesome/free-brands-svg-icons": "^5.15.3",
    "@fortawesome/free-solid-svg-icons": "^5.15.3",
    "@ngbmodule/material-carousel": "^0.7.1",
    "@ngx-meta/core": "^9.0.0",
    "@ngx-translate/core": "^13.0.0",
    "@ngx-translate/http-loader": "^6.0.0",
    "firebase": "^8.3.2",
    "flag-icon-css": "^3.5.0",
    "guid-typescript": "^1.0.9",
    "ngx-color-picker": "^10.1.0",
    "ngx-image-compress": "^8.0.4",
    "ngx-markdown": "^10.1.1",
    "ngx-sharebuttons": "^8.0.5",
    "ngx-spinner": "^10.0.1",
    "ngx-toastr": "^13.2.1",
    "rxjs": "~6.6.7",
    "tslib": "^2.2.0",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.1102.7",
    "@angular/cli": "~11.2.7",
    "@angular/compiler-cli": "~12.0.0-next.7",
    "@angular/language-service": "~12.0.0-next.7",
    "@types/jasmine": "~3.6.0",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^14.14.37",
    "codelyzer": "^6.0.1",
    "jasmine-core": "~3.6.0",
    "jasmine-spec-reporter": "~5.0.0",
    "karma": "~6.3.2",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage-istanbul-reporter": "~3.0.2",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.5.0",
    "protractor": "~7.0.0",
    "ts-node": "~8.10.2",
    "tslint": "~6.1.3",
    "typescript": "^4.2.3"
  }
}

我错过了什么或者不理解什么?

EN

回答 8

Stack Overflow用户

发布于 2021-06-11 08:23:39

如果您在安装primeng之后面临此问题,请注意最新版本的primeng (12.0.0-rc.1)不适用于最新版本的角。你需要安装一个早期版本的primeng,对我来说,11.4完美工作!

代码语言:javascript
复制
npm i primeng@11.4.2
票数 16
EN

Stack Overflow用户

发布于 2021-06-01 07:32:23

即使没有升级,我也会收到这个错误。我和"@angular/core": "~9.1.1"一起和Node v12.16.2npm 4.0.2在一起。这是由primeNg组分引起的。我升级到node: '14.17.0'和npm到npm: '6.14.13',创建了一个新的角度应用程序,重新安装了包括primeNg在内的所有依赖项,添加了来自当前项目的所有代码,重新编译,错误就消失了。

票数 3
EN

Stack Overflow用户

发布于 2021-06-02 10:21:02

所以我在做关于FireBase的教程时遇到了这个问题

本教程建议我做的是:

  1. 通过运行npm安装角火@角/火
  2. 将所有出现的angularfire2替换为“角/火”(导入时)
  3. 将所有出现的afAuth.auth替换为afAuth

在这样做时,我还必须在tsConfig文件中启用tsConfig(在编译器选项下," allowSyntheticDefaultImports ":true)。

这解决了我的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66987715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档