web-dev-qa-db-ja.com

Angular 4、angularfire2、メタデータバージョンの不一致

次のエラーが発生しました

モジュールc:/..../ node_modules/angularfire2/index.d.tsのメタデータバージョンの不一致、バージョン4が見つかりました、予想される3。

そして、私がpackage.jsonにチェックインすると、バージョン5.0.0-rc.4にanglefire2があり、4.6.2にfirebaseがあります。 詳細についてはスクリーンショットを参照

Angularfire2とfirebaseのバージョンを以前のバージョンに変更しようとしましたが、何も機能しませんでした。

助言がありますか ?ありがとうございました。

{
  "name": "Twitter-revamped",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^4.2.4",
    "@angular/common": "^4.2.4",
    "@angular/compiler": "^4.2.4",
    "@angular/core": "^4.2.4",
    "@angular/forms": "^4.2.4",
    "@angular/http": "^4.2.4",
    "@angular/platform-browser": "^4.2.4",
    "@angular/platform-browser-dynamic": "^4.2.4",
    "@angular/router": "^4.2.4",
    "angularfire2": "^5.0.0-rc.4",
    "core-js": "^2.4.1",
    "firebase": "^4.6.2",
    "ng2-semantic-ui": "^0.9.6",
    "rxjs": "<5.4.2",
    "zone.js": "^0.8.14"
  },
  "devDependencies": {
    "@angular/cli": "1.4.7",
    "@angular/compiler-cli": "^4.2.4",
    "@angular/language-service": "^4.2.4",
    "@types/jasmine": "~2.5.53",
    "@types/jasminewd2": "~2.0.2",
    "@types/node": "~6.0.60",
    "codelyzer": "~3.2.0",
    "jasmine-core": "~2.6.2",
    "jasmine-spec-reporter": "~4.1.0",
    "karma": "~1.7.0",
    "karma-chrome-launcher": "~2.1.1",
    "karma-cli": "~1.0.1",
    "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": "~3.2.0",
    "tslint": "~5.7.0",
    "TypeScript": "~2.3.3"
  }
}
14
Robin

解決しました

Firebaseとangularfire2をこれに設定する必要がありました:

"firebase":"4.6.0", "angularfire2": "5.0.0-rc.3"

しかし、私は別のエラーが発生しました:
"@angular/compiler-cli" package was not properly installed. Error: Error: Cannot find module '@angular/compiler-cli'

Npmのインストールで修正されました。

7
Robin

上記の解決策を試しましたが、問題は解決しませんでした。以下の手順を試してみたところ、問題が解決しました。

この問題は、npm install angularfire2 firebase --saveコマンドが実行されました。以下の依存関係がpackage.jsonに追加されました

"angularfire2": "^5.0.0-rc.4",
"firebase": "^4.7.0"

ここでの実際の問題は、angularfire2のバージョンが原因です。 angularfire2 ":" ^ 5.0.0-rc.4の代わりにangularfire2 ":" ^ 5.0.0-rc.が必要です。このバージョンに問題がある理由については知りません。

解決の手順は次のとおりです。

ステップ1:angularfire2とfirebaseのアンインストール

npm uninstall angularfire2 firebase --save

ステップ2:angularfire2 5.0.0-rc.3バージョンのインストール

npm install [email protected] --save

ステップ3:firebaseをインストールする

npm install firebase --save

ステップ4:package.jsonに追加された依存関係を確認する

"angularfire2": "^5.0.0-rc.3",
"firebase": "^4.7.0"

ステップ5:サービスの実行

ng serve

これにより問題が解決し、アプリケーションが正常にコンパイルされます。

23
Prasad Kaiche

これが私がこの問題を解決した方法です。記載されている手順に従います。

ステップ1:以前にインストールされたangularfire2のpacakgeをアンインストール

npm uninstall angularfire2

ステップ2:angularfire2 5.0.0-rc.3をインストール

npm install [email protected] --save

ステップ3:package.jsonを確認してください

Package.jsonの依存関係の下に次の行があることを確認してください

"angularfire2": "^5.0.0-rc.3",
"firebase": "^4.6.0",

これは私が問題を解決した方法です。

10
yogihosting

同じ問題に直面しましたが、package.jsonファイルの"angularfire2": "^5.0.0-rc.3"から"angularfire2": "^5.0.0-rc.4"のように、angularfire2のリリース候補を3に戻すことで解決しました。次に、ノードモジュールを削除してnpm i or npm installを実行します。

または、angularfire2をunintallして、package.jsonおよびpackage.json.lockファイルからも削除してください。それを再インストールし、npm install [email protected] --saveのようなリリース候補を指定します。

2
Mehul Jariwala

同じ問題がありました。 anglefire2のバージョンを「5.0.0-rc.3」にダウングレードすると、うまくいきました。

"angularfire2": "^5.0.0-rc.3"
0
nexus nexus

このエラーは、ng serveをインストールした後にyarn upgardeを実行したときにも発生しました。

  [email protected]
  [email protected]

[email protected]にダウングレードすると、問題が解決しました。

  yarn remove angularfire2
  yarn add [email protected]

[email protected]は新しいfirabaseでは機能しませんでした。この種の無限のアップグレードの問題を見る権利はありません。

0
bob

手順に従ってください-問題が解決されます
1。 npm uninstall angularfire2 firebase --save
2。 npm install [email protected] --save
3。 npm install firebase --save
4。サーブ

angularfire25.0.0-rc.4は、firebase4.5.0およびangular 5.0.0

angularfire2 package.json を確認してください:

"firebase": "^4.5.0"
0
Antikhippe