web-dev-qa-db-ja.com

アップグレード方法 Angular 最新バージョンへのCLI

私が手に入れたng --versionを使う:

@角度/ CLI:1.0.0

最新のリリースではありません。

システムにAngular CLIがグローバルにインストールされているので、それをアップグレードするために私は試してみました:

npm update angular-cli -g

それは1.0.0バージョンにとどまるのでしかし、それは動作しません。

102
Francesco Borzi

GitHubレポジトリで報告されたいくつかの問題を読んだ後、私はその解決策を見つけました。

あなたのシステムにグローバルにインストールされているangular-cliパッケージを更新するために、あなたは実行する必要があります:

npm uninstall -g angular-cli
npm cache clean or npm cache verify (if npm > 5)
npm install -g @angular/cli@latest

システムによっては、上記のコマンドの前にSudoを付ける必要があるかもしれません。

また、プロジェクトディレクトリ内ではグローバルプロジェクトよりも高い優先順位で選択されるため、ローカルプロジェクトのバージョンも更新することをお勧めします。

rm -rf node_modules
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install

GitHub )でこれを指摘してくれてありがとうgrizzm0

CLIをアップデートした後、おそらく Angular version もアップデートしたい)でしょう。

:古いバージョンからAngular CLI 6+にアップデートする場合は、 this )を読む必要があるかもしれません。

編集 :さらに、まだ1.xバージョンのcliを使っている場合は、angular-cli.jsonangular.jsonに変換する必要があります。これは次のコマンドで実行できます。

ng update @angular/cli --from=1.7.4 --migrate-only

(詳細は this )を確認してください。

588
Francesco Borzi

ng6 + - > 7.0

RxJSを更新する(RxJS 6.3に依存)

npm install -g rxjs-tslint
rxjs-5-to-6-migrate -p src/tsconfig.app.json

rxjs-compatを削除します。

それからコアパッケージとCliを更新します。

ng update @angular/cli @angular/core

(オプション:NG7でサポートされているNode.jsをバージョン10に更新します)

ng6 +(Cli 6.0以降) :簡易コマンド機能

まず、あなたのCliを更新します

npm install -g @angular/cli
npm install @angular/cli
ng update @angular/cli

それから、コアパッケージをアップデートしてください。

ng update @angular/core

RxJSを使っているなら、

ng update rxjs

それはRxJSをバージョン6に更新し、ボンネットの下にrxjs-compatパッケージをインストールします。

ビルドエラーが発生した場合は、次の手動インストールを試してください。

npm i rxjs-compat
npm i @angular-devkit/build-angular

最後に、バージョンを確認してください

ng v

プロダクションビルドに関する注意:

ng6はpolyfills.tsintlを使用しなくなりました

//remove them to avoid errors
import 'intl';
import 'intl/locale-data/jsonp/en';

ng 5+(Cli 1.5+)

npm install @angular/{animations,common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router}@next [email protected] rxjs@'^5.5.2'
npm install [email protected] --save-exact

注意:

  1. 執筆時点でサポートされているCli 1.6のTypeScriptバージョンは、最大2.5.3です。
  2. 利用可能な場合、@ nextを使用するとパッケージがベータ版に更新されます。 @latestを使って最新の非ベータ版を入手してください。

グローバルパッケージとローカルパッケージの両方を更新したら、エラーを回避するためにキャッシュをクリアします。

npm cache verify (recommended)
npm cache clean (for older npm versions)

これが公式の参考文献です。

  1. Cli を更新する
  2. コアパッケージの更新 コアパッケージ
139
Pageii Studio

あなたは単に使うことができます

npm install -g angular-cli - 初めての場合

npm install -g @angular/cli@latest - uが既にインストールされている場合、更新のために

67
SamYah

強力なコマンドは、最後のパッケージをインストールして置き換えます。

私は同様の問題を抱えていました。それを私が直した。

 npm install -g @angular/cli@latest

そして

npm install --save-dev @angular/cli@latest

enter image description here

25
BehrouzMoslem

このコマンドはうまくいきます:

npm upgrade -g @angular/cli
23
wdavilaneto

@ShinDarthに加えて回答

私は彼が言ったことをしました、しかし私のパッケージはアンギュラバージョンを更新しませんでした、そして私はこの記事がangular-cliに関するものであることを知っています、しかし私はこれが同じく役に立つことができると思います。

  • @ShinDarthが上で述べたことをした後、私のAngularバージョンを修正するために、パッケージを生成した-ng new projectnameを使って新しいプロジェクトを作成しなければなりませんでした。
  • 新しいパッケージをコピーしてから、更新が必要なすべてのプロジェクトパッケージに新しいパッケージを貼り付ける(持っていた依存関係を追加し、最初の行に名前を変更することを忘れないでください)。
  • それから-npm installを実行してください。

今私のng serveは再び働いています、誰かが知っているなら、共有してください、それをすべてするより良い方法があるかもしれません、これは更新を必要とするすべてのプロジェクトにするための痛みです。

14

次のアプローチは私のために働きました:

npm uninstall -g @angular/cli

それから

npm cache verify

それから

npm install -g @angular/cli@latest

私はWindows 10で作業していますが、npm cache clean --forceも使用しなければならないことがありました。インストール中に問題がなければする必要はありません。

13
Enayat Rajabi

更新:
CLI v6 から始めると、依存関係を自動的に新しいバージョンに更新するために ng update を実行することができます。

ng update で時々--forceフラグを追加したいかもしれません。

すべての古いパッケージをアップグレードするために--allフラグを渡すこともできます。

更新が完了したら、インストールしたTypeScriptのバージョンが現在のAngularバージョンでサポートされていることを確認してください。それ以外の場合は、TypeScriptバージョンをダウングレードする必要があります。また、通常、最新バージョンのAngularは最新バージョンのTypeScriptをサポートしないことにも注意してください。

このガイドもチェックしてください Angularプロジェクトを更新する そして update.angular.io


古い答え:
angle-cli-diff で差分をとり、現在のプロジェクトに変更を適用するだけです。

手順は次のとおりです。

  1. 1.4から行ったとしましょう。 1.5にしてからあなたは https://github.com/cexbrayat/angular-cli-diff/compare/1.4.0...1.5.0
  2. File changedタブをクリック
  3. 現在のプロジェクトに変更を適用します。
  4. npm install/yarn
  5. すべてのnpm scriptsをテストします( 詳細はこちら: https://stackoverflow.com/a/45431592/415078
10
Kuncevič

Angular CLI を新しいバージョンに更新するには、グローバルパッケージとプロジェクトのローカルパッケージの両方を更新する必要があります。

グローバルパッケージ:

npm uninstall -g @angular/cli
npm cache clean
# if npm version is > 5 then use `npm cache verify` to avoid errors (or to avoid using --force)
npm install -g @angular/cli@latest

ローカルプロジェクトパッケージ:

rm -rf node_modules dist # use rmdir /S/Q node_modules dist in Windows Command Prompt; use rm -r -fo node_modules,dist in Windows PowerShell
npm install --save-dev @angular/cli@latest
npm install

出典: Github

7
Hasan Fathi

私の場合は、npm install --save-dev angular-cliを使用してローカルで角度クリップをインストールしました。したがって、npm install -g @ angular/cliコマンドを使用すると、 "あなたのグローバルAngular CLIバージョン(1.7.3)がローカルバージョン(1.4.9)よりも大きいことを示すエラーが生成されます。 ) " 。 Angular-Cli、@ Angular/Cli、および@ Angular/Cli @ Latestは、2つの異なるCLIです。これを解決するのは、すべてのcliをアンインストールしてから、 npm install -g @ angular/cli @ latest を使用して最新のangle cliをインストールすることです。

3
ARKhan