1. ホーム
  2. angular

[解決済み] Angular CLIでピア依存関係をインストールするにはどうしたらいいですか?

2023-03-22 07:21:04

質問

Angular CLIとNPMを更新しようとすると、ほとんど終わりのないエラーのサイクルに陥っていることに気づきました。更新するたびに、ピアの依存関係をインストールするように指示するWARNメッセージが表示されますが(下記参照)、依存関係をインストールするたびに、さらにWARNメッセージが表示されます。この状況を処理する良い方法はありますか、それとも真剣に何時間もかかりますか?

npm WARN @angular/[email protected] requires a peer of @angular/[email protected] 
but none is installed. You must install peer dependencies yourself.
npm WARN @angular/[email protected] requires a peer of typescript@>=2.4.2 
<2.6 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/[email protected] requires a peer of 
@angular/core@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @ng-bootstrap/[email protected] requires a peer of 
@angular/common@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @ng-bootstrap/[email protected] requires a peer of 
@angular/forms@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @schematics/[email protected] requires a peer of @angular-
devkit/[email protected] but none is installed. You must install peer dependencies 
yourself.
npm WARN @schematics/[email protected] requires a peer of @angular-
devkit/[email protected] but none is installed. You must install peer 
dependencies yourself.
npm WARN @schematics/[email protected] requires a peer of @angular-
devkit/[email protected] but none is installed. You must install peer dependencies 
yourself.
npm WARN [email protected] requires a peer of 
@angular/core@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN [email protected] requires a peer of 
@angular/common@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN [email protected] requires a peer of @angular/platform-
browser@^4.0.0 but none is installed. You must install peer dependencies 
yourself.
npm WARN [email protected] requires a peer of 
@angular/animations@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN [email protected] requires a peer of [email protected] - 3 but none 
is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of popper.js@^1.12.3 but 
none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of @angular/core@^2.4.7 || ^4.0.0 
but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of @angular/core@^2.4.0 || 
^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of @angular/common@^2.4.0 || 
^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of typescript@>=2.4.2 <2.6 but none 
is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] 
(node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 
[email protected]: wanted {"os":"darwin","arch":"any"} (current: 
{"os":"win32","arch":"x64"})

何か間違ったことをしているに違いないと思いますが、私はAngularの初心者なのです。

どのように解決するのですか?

ピア依存性の警告は、多くの場合、無視することができます。対処が必要なのは、ピア依存関係が完全に欠けている場合、またはピア依存関係のバージョンがインストールされているバージョンより高い場合だけです。

この警告を例として見てみましょう。

npm WARN @angular/[email protected] は、以下のピアを必要とします。 angular/[email protected] が必要ですが、インストールされていません。ピアはインストールされていません。 をインストールする必要があります。

Angularでは、使用するバージョンがすべてのパッケージで一貫していることが望まれます。もし、互換性のないバージョンがある場合は パッケージ.json でバージョンを変更し npm install を実行すると、それらがすべて同期されます。私はAngularのバージョンを最新に保つ傾向がありますが、あなたが必要とするAngularのバージョン(最新でない場合もあります)に対してバージョンが一貫していることを確認する必要があります。

このような状況で

npm WARN [email protected] requires a peer of @angular/core@^2.4.0 ||? ^4.0.0 のピアが必要ですが、インストールされていません。ピアの依存関係をインストールする必要があります。 を自分でインストールする必要があります。

Angularの4.0.0以上のバージョンで作業している場合は、おそらく問題はないでしょう。この件に関しては、何もすることはありません。2.4.0 未満の Angular バージョンを使用している場合は、バージョンを上げる必要があります。そのためには パッケージ.json を更新し、実行します。 npm install を実行するか、あるいは npm install を実行してください。このように

npm install @angular/[email protected] --save

を省くことができます。 --save npm 5.0.0 以降を使用している場合、そのバージョンではパッケージは パッケージ.json に自動的に保存されます。

このような状況で

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modulesfsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64" })

Windows を実行しており fsevent は OSX を必要とします。この警告は無視できます。

Angularの学習を楽しんでください。