[英]Metadata version mismatch Angular 4 @ng-bootstrap
我正在使用Angular Bootstrap模塊。 當我使用以下命令安裝模塊時, npm install --save @ng-bootstrap/ng-bootstrap
並將模塊導入到主應用程序模塊。 然后我重新運行以下錯誤。
ERROR in Error: Metadata version mismatch for module F:/nodejs/angular4/mybootst
rap3/node_modules/@ng-bootstrap/ng-bootstrap/index.d.ts, found version 4, expect
ed 3, resolving symbol AppModule in F:/nodejs/angular4/mybootstrap3/src/app/app.
module.ts, resolving symbol AppModule in F:/nodejs/angular4/mybootstrap3/src/app
/app.module.ts
這是我的角度版本
@angular/cli: 1.4.4
node: 6.11.2
os: win32 ia32
@angular/animations: 4.4.6
@angular/common: 4.4.6
@angular/compiler: 4.4.6
@angular/core: 4.4.6
@angular/forms: 4.4.6
@angular/http: 4.4.6
@angular/platform-browser: 4.4.6
@angular/platform-browser-dynamic: 4.4.6
@angular/router: 4.4.6
@angular/cli: 1.4.4
@angular/compiler-cli: 4.4.6
@angular/language-service: 4.4.6
typescript: 2.3.4
題
該錯誤是由以下事實引起的:安裝的ng-bootstrap模塊版本具有針對更高版本Angular的元數據。 為了解決這個問題,
通過運行找出當前安裝了哪個版本的ng-bootstrap
npm list ng-bootstrap
運行以下命令以查看ng-bootstrap節點模塊的所有可用版本。
npm show ng-bootstrap@* version
選擇一個低於當前安裝版本的版本,然后安裝
npm install ng-bootstrap@x.y.z
* xyz是指版本號。
嘗試npm start
現在npm start
,看看是否npm start
。
如果不是,請還原為另一個較低的版本,然后重試npm install的上述步驟。
一旦可行,請使用解決該問題的版本號更新package.json,以免將來再次出現此問題。 比方說版本號。 1.3.0解決了該問題,然后使用來更新軟件包json。
"@ng-bootstrap/ng-bootstrap": "1.3.0"
如果插入符(^)存在,請將其刪除,以防止自動選擇可用的最高模塊版本。
發生這種情況是因為最新版本的@ ng-bootstrap出現了問題。
我通過改變解決了
"@ng-bootstrap/ng-bootstrap": "^1.0.0-beta.5",
在package.json中
"@ng-bootstrap/ng-bootstrap": "1.0.0-beta.5",
您需要在package.json中指定正確的版本,否則它將獲取最新的ng-bootstrap,該版本在使用angular 4時會出現問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.