【问题标题】:Cannot find module '@angular/core' when using PrimeNg使用 PrimeNg 时找不到模块“@angular/core”
【发布时间】:2019-08-06 17:15:15
【问题描述】:

我已经安装了 PrimeNg 并尝试使用侧边栏组件,但是当我运行我的项目时出现此错误

ERROR in /home/haddad/projects/node_modules/primeng/components/sidebar/sidebar.d.ts (1,97): Cannot find module '@angular/core'.
ERROR in Error: Metadata version mismatch for module /home/haddad/projects/node_modules/primeng/components/sidebar/sidebar.d.ts, found version 4, expected 3, resolving symbol AppModule in /home/haddad/projects/ar/arrt/src/app/app.module.ts, resolving symbol AppModule in /home/haddad/projects/ar/arrt/src/app/app.module.ts

我应该使用 angular 4 ,所以我将 PrimeNg 版本修改为 4.2.1 而不是 5v

这是 package.json 文件

"dependencies": {
  "@angular/animations": "^4.3.4",
  "@angular/common": "~4.3.4",
  "@angular/compiler": "~4.3.4",
  "@angular/core": "~4.3.4",
  "@angular/forms": "~4.3.4",
  "@angular/http": "~4.3.4",
  "@angular/platform-browser": "~4.3.4",
  "@angular/platform-browser-dynamic": "~4.3.4",
  "@angular/router": "~4.3.4",
  "core-js": "^2.4.1",
  "primeng": "^4.2.1",
  "rxjs": "^5.5.6",
  "zone.js": "^0.8.19"
},
"devDependencies": {
  "@angular/cli": "1.6.6",
  "@angular/compiler-cli": "^4.3.4",
  "@angular/language-service": "^4.3.4",
  "@types/jasmine": "~2.8.3",
  "@types/jasminewd2": "~2.0.2",
  "@types/node": "~6.0.60",
  "codelyzer": "^4.0.1",
  "jasmine-core": "~2.8.0",
  "jasmine-spec-reporter": "~4.2.1",
  "karma": "~2.0.0",
  "karma-chrome-launcher": "~2.2.0",
  "karma-coverage-istanbul-reporter": "^1.2.1",
  "karma-jasmine": "~1.1.0",
  "karma-jasmine-html-reporter": "^0.2.2",
  "protractor": "~5.1.2",
  "ts-node": "~4.1.0",
  "tslint": "~5.9.1",
  "typescript": "~2.1.0"
}

还有我的 module.ts 文件:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import {SidebarModule} from 'primeng/sidebar';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,SidebarModule,BrowserAnimationsModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

【问题讨论】:

    标签: angular npm dependencies primeng


    【解决方案1】:

    这可能是版本问题和版本不匹配

    尝试一下

    primeng:^4.2.4
    

    【讨论】:

      【解决方案2】:

      再试一次。

      npm install primeng --save

      npm install primeicons --save

      并确保你的 pack-lock.json 有这个

      "dependencies": {
        //...
        "primeng": "^7.0.0",
        "primeicons": "^1.0.0"
      },
      

      【讨论】:

        【解决方案3】:

        我也遇到过类似的问题:

        ERROR in ../node_modules/primeng/components/checkbox/checkbox.d.ts(1,49): error TS2307: Cannot find module '@angular/core'.
        ../node_modules/primeng/components/checkbox/checkbox.d.ts(2,51): error TS2307: Cannot find module '@angular/forms'.
        ../node_modules/primeng/components/listbox/listbox.d.ts(1,103): error TS2307: Cannot find module '@angular/core'.
        ../node_modules/primeng/components/listbox/listbox.d.ts(3,38): error TS2307: Cannot find module '@angular/forms'.

        用 npm 重新安装 primeng 解决了这个问题

        【讨论】:

          猜你喜欢
          • 2019-10-17
          • 2020-06-23
          • 1970-01-01
          • 2021-01-01
          • 2018-10-05
          • 2018-07-01
          • 2016-09-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多