ng serve
を実行すると、グローバルCLIのバージョンがローカルバージョンよりも大きいという警告が表示されます。私はこの警告による問題に気づいていませんが、2つのバージョンが同期しているべきかどうか疑問に思いましたか?また、あなたがグローバル版を持っているならそれはローカル版を持っている必要がありますか?
警告:
あなたのグローバルAngular CLIバージョン(1.1.1)はあなたのローカルバージョン(1.0.6)より上です。ローカルのAngular CLIバージョンが使用されます。
質問の1つに答えるには、ツールを機能させるためにグローバルインストールとローカルインストールの両方が必要です。
CLIをローカルインストールせずにアプリケーションでng serve
を実行しようとすると(グローバルインストールのみ)、次のエラーが発生します。
Serveコマンドを使用するには、Angular CLIプロジェクト内にいる必要があります。
このメッセージも表示されます。
Please take the following steps to avoid issues:
"npm install --save-dev @angular/cli@latest"
そのnpm
コマンドを実行してCLIをローカルに更新し、表示される警告を回避します。
他の質問:haveが同期していないように見えますが、ツールとの異常な振る舞いやツールとのコードの不一致を避けるためであることがおそらく最善です。生成します。
なぜグローバルインストールとローカルインストールの両方が必要なのですか?
グローバルインストールは、新しいアプリケーションを起動するために必要です。 ng new <app-name>
コマンドは、CLIのグローバルインストールを使用して実行されます。実際、既存のCLIアプリケーションのフォルダ構造内でng new
を実行しようとすると、この素敵なエラーが発生します。
Angular CLIプロジェクト内で
new
コマンドを使用することはできません。
グローバルインストールから実行できるその他のコマンドには、ng help
、ng get/set
オプション付きの--global
、ng version
、ng doc
、および ng completion
があります。
CLIのローカルインストールは、アプリケーションの構築後に使用されます。これにより、新しいバージョンのCLIが使用可能になったときに、グローバルインストールを更新でき、ローカルインストールには影響しません。これはプロジェクトの安定性にとって良いことです。 ng
、lint
、build
など、ほとんどのserve
コマンドはローカルバージョンでのみ意味があります。
CLI GitHub readme によると、CLIを更新するには、グローバルパッケージとローカルパッケージを更新する必要があります。ただし、これまで問題なくグローバルバージョンとローカルバージョンが異なるCLIを使用しました。グローバルCLIバージョンとローカルCLIバージョンの同期がずれていることに関連するエラーに遭遇した場合は、それをここに投稿します。
これは私のために動作します:それは最新のものにローカルバージョンを更新する
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install
バージョンを確認する
ng --version
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
次のコマンドを実行して、既存の設定を自動的に更新することができます。
ng update @angular/cli
または
npm install
npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
それからあなたのローカルプロジェクトパッケージで:
rm -rf node_modules dist
npm install --save-dev @angular/cli@latest
npm i
ng update @angular/cli
ng update @angular/core
npm install --save-dev @angular-devkit/build-angular
エラーの下になっていましたエラー:JSON入力の予期せぬ終わりJSON入力の予期せぬ終わり上記のステップはこの記事から助けました 角度6をバージョン6に更新できません
次のコマンドを実行します。npm install --save-dev @angular/cli@latest
上記のコマンドを実行した後、コンソールは以下のメッセージをポップアップするかもしれません
Angular CLI設定形式が変更されました。次のコマンドを実行すると、既存の設定を自動的に更新できます。ng update @ angular/cli
私の場合は、このコマンドをプロジェクトに使用しました。
ng update @angular/cli
私は英語が堪能ではない
しかし、私がその問題を理解しているならば、プロジェクト内のローカルに、グローバルよりも古いバージョンのCLIがあるのでしょうか。
そして、あなたは地元の古いものの代わりにこの世界的に新しいものを使いたいですか?
もしそうなら、非常に単純な方法でプロジェクトディレクトリnpm link @angular/cli
で実行するのに十分です。
ページの件名の詳細: https://docs.npmjs.com/cli/link
まず、次のコマンドを実行して、グローバルAngular-Cliのバージョンを調べます。
ng --version
上記のコードは、どのバージョンがグローバルおよびローカルのangle-cliバージョンであるかを示します。
グローバルとローカルの角度クリップを同じにしたい場合は、
npm install --save-dev @angular/[email protected]
1.7.4はあなたのグローバルAngular-Cliバージョンです。
ng serve --open
を実行するとコードも実行されます。
npm install --save-dev @ angular-devkit/build-angular - > angle @ cliのアップデートに役立ちました - > angular.jsonおよびその他のアップデートの作成。
インストール済みの依存関係を収集中... 58個の依存関係が見つかりました。
** Executing migrations for package '@angular/cli' **
Updating karma configuration
Updating configuration
Removing old config file (.angular-cli.json)
Writing config file (angular.json)
Some configuration options have been changed, please make sure to update any npm scripts which you may have modified. DELETE .angular-cli.json CREATE angular.json (4394 bytes) CREATE browserslist (429 bytes) UPDATE karma.conf.js (993 bytes) UPDATE public/tsconfig.spec.json (295 bytes) UPDATE package.json (2618 bytes) UPDATE tsconfig.json (437 bytes) UPDATE tslint.json (3135 bytes) UPDATE public/polyfills.ts (587 bytes) UPDATE public/tsconfig.app.json (199 bytes) npm WARN @angular/[email protected] requires a peer of zone.js@^0.8.4 but none is installed. You must install peer dependencies yourself.