ホームページ > ウェブフロントエンド > jsチュートリアル > Angularプロジェクトを最新バージョンに更新する方法

Angularプロジェクトを最新バージョンに更新する方法

Christopher Nolan
リリース: 2025-02-15 11:24:13
オリジナル
669 人が閲覧しました

How to Update Angular Projects to the Latest Version

キーポイント

  • 更新しようとする前に、Angular CLIの最新バージョンが実行されていることを確認してください。 npm install -g @angular/cli@latest
  • Angular Update Guideを使用して、現在のAngularバージョンから必要なバージョンに更新する特定の手順を決定し、アプリケーションの複雑さに従って調整します。
  • HttpModuleに置き換えて、新しいHTTPCLIENTの自動JSON処理とHTTPインターセプターのサポートを活用します。 HttpClientModule
  • ツリーシェーキングを強化し、パッケージサイズを
  • からインポートし、rxjs/operatorsメソッドでRXJS Pipetableオペレーターを使用して適用します。 .pipe()
  • が更新されたら、
  • を実行し、App-Root要素のng serve属性をチェックして、アプリケーションの機能と角度バージョンを確認します。 ng-version
  • 公式のAngularブログに従って、新しいバージョンと更新のログを変更して、最新の改善と機能を使用してアプリケーションを維持します。
この記事では、Angularプロジェクトを最新バージョンに更新する方法について説明します。

この記事は、Angular CLIを使用してCRUDアプリケーションを作成する方法について説明するSitePoint Angular 2チュートリアルのパート6です。

    パート0 - 最終的な角度CLIリファレンスガイド
  1. パート1 - TODOアプリケーションの最初のバージョンを起動して実行しています
  2. パート2 - TODOリストと個々のTODOを表示するための個別のコンポーネントを作成します
  3. パート3 - TODOサービスを更新して、REST APIと通信します
  4. パート4 - 角度ルーターを使用してデータを解析します
  5. パート5 - 認証を追加してプライベートコンテンツを保護します
  6. パート6 - Angular Projectsを最新バージョンに更新する方法
  7. パート1では、TODOアプリケーションを作成して実行してGitHubページに展開する方法を学びました。これはうまく機能しますが、残念ながらアプリケーション全体がコンポーネントに詰め込まれています。
  8. パート2では、よりモジュール式コンポーネントアーキテクチャを調べ、この単一のコンポーネントを、理解し、再利用し、維持しやすい構造化された小さなコンポーネントツリーに分割する方法を学びました。
パート3では、RXJSとAngularのHTTPサービスを使用して、REST APIバックエンドと通信するためにアプリケーションを更新しました。

パート4では、Angularルーターを導入し、ブラウザーURLが変更されたときにルーターがアプリケーションを更新する方法と、バックエンドAPIからのデータを解析するためにルーターを使用する方法を学習します。

パート5では、アプリケーションに認証を追加し、アプリケーションのさまざまな部分を許可されていないアクセスから保護する方法を学びました。

心配しないでください!パート6を理解するために、このチュートリアルのパート1、2、3、4、または5に従う必要はありません。単にコードベースのコピーを取り、パート5のコードを見て、開始点として使用できます。これについては、以下で詳しく説明します。

アップロードして実行します

Angularのターゲットの更新を開始するには、Angular CLIの最新バージョンがインストールされていることを確認してください。そうでない場合は、次のコマンドでインストールできます。

npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
以前のバージョンのAngular CLIを削除する必要がある場合は、次のことができます。

の後、パート5のコードのコピーが必要です。これはGitHubで利用できます。このシリーズの各投稿には、リポジトリに対応するタグがあるため、このアプリの異なる状態間で前後に切り替えることができます。
npm uninstall -g @angular/cli angular-cli
npm cache clean
npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

パート5の最後に使用したコードと、この記事で始めたコードは、パート5とマークされています。この記事を終了するために使用したコードは、パート6とマークされています。

特定のコミットIDのエイリアスとしてタグを扱うことができます。 Git Checkoutを使用してそれらを切り替えることができます。詳細については、こちらをご覧ください。

したがって、起きて実行するには(Angular CLIの最新バージョンをインストール)、次のことを行います。

次に、

https://www.php.cn/link/d111f133fa0ea545d48291f9b0a72b2d
git clone git@github.com:sitepoint-editors/angular-todo-app.git
cd angular-todo-app
git checkout part-5
npm install
ng serve
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
todoアプリケーションにアクセスしてください。

Angularの更新:攻撃計画

この記事では、Angularを更新すると、次のことを学びます。

Angularバージョンはどのように機能しますか

angular
    を更新する方法に関する指示はどこにありますか
  • Angular 4からAngular 5にコードを更新する方法(執筆時点で、Angular 5は最新バージョンです)。
  • この記事の最後に、あなたは次のことを学びます:
  • 特定の角度バージョンの基本的な意味

角度アプリケーションを更新する方法についての正確な指示はどこにありますか

    Angular 5に必要なコードの変更を決定する方法(存在する場合)。
  • 始めましょう!
  • Angularバージョンの意味
繁栄する生態系をサポートするためには、角度は安定して発達する必要があります。

一方で、Angularは、ミッションクリティカルなアプリケーションに最大の安定性を提供するように設計されています。一方、Webテクノロジーの最新の変更をサポートするために、適応および進化する必要があります。

したがって、Angularチームは、時間ベースのリリースサイクルとセマンティックバージョンの使用を使用することを決定しました。

時間ベースのリリースサイクルは、数週間または数ヶ月ごとに新しい角度バージョン(Angular 5、Angular 6、Angular 7など)が期待できることを意味します。

セマンティックバージョンの意味では、Angularのバージョン番号を使用すると、アップグレードした場合にアプリケーションが壊れるかどうかを予測できます。

本質的に、セマンティックバージョンはメジャーバージョンです。

したがって、バージョンv1.3.8のプライマリバージョン値は1、セカンダリバージョン値は3、改訂値は1です。

新しいバージョンがリリースされると、新しいバージョンはコードに加えられた変更のタイプを暗黙的に示します。

セマンティックバージョンを追加するとき、次のルールが適用されます。

  1. 各増分は、1の増分で数値増分になります。

  2. エラーを修正すると
  3. 改訂版が追加され、コードは後方互換性のあるままになります。

    npm install -g @angular/cli@latest
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
  4. 機能を追加すると、コードが後方互換性のあるままになると、転覆が追加され、リビジョンはゼロにリセットされます。
  5. npm uninstall -g @angular/cli angular-cli
    npm cache clean
    npm install -g @angular/cli@latest
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
    コードが逆互換性のない(主要な変更とも呼ばれる)を逆方向にする変更を実装すると、メジャーバージョンが追加され、マイナーバージョンとリビジョンはゼロにリセットされます。
  6. セマンティックバージョンに慣れていない場合は、このシンプルなセマンティックバージョンガイドを必ずチェックしてください。
    git clone git@github.com:sitepoint-editors/angular-todo-app.git
    cd angular-todo-app
    git checkout part-5
    npm install
    ng serve
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
    ログイン後にコピー
  7. Angularチームは、セマンティックバージョンと時間ベースのリリースサイクルを組み合わせて、次のことを目指しています。

新しい改訂が毎週リリースされます

新しい転覆が毎月リリースされます

    6か月ごとに新しいメジャーリリースがリリースされます
  • 休暇や特別なイベントがある可能性があるため、リリース計画は石に設定されていませんが、今後のリリースが期待できることの良い指標です。
  • 公式のAngularブログと公式変更ログに従って、最新の開発を最新の状態に保つことができます。
セマンティックバージョンの大きな利点は、アプリケーションの破損を心配することなく、改訂または転覆を使用してAngularアプリケーションを安全に更新できることです。

しかし、新しいメジャーバージョンが表示された場合はどうなりますか?

Angular Update Guide

主要なバージョンが大きな変化をもたらす可能性があることを学びました。それで、私たちがそれを更新した場合、既存のアプリケーションが壊れるかどうかをどのようにして知ることができますか?

1つの方法は、公式の変更ログを読み、変更リストを表示することです。

簡単な方法は、Angular Updateガイドを使用してAngularを更新することです。現在のAngularバージョンとアップグレードするバージョンを選択できます。アプリケーションでは、必要な正確な手順がわかります。

Angular Todoアプリケーションでは、Angular 4.0からAngular 5.0にアップグレードしたいと考えています。

アプリケーションの複雑さレベルを選択してみましょう

AdvancedHow to Update Angular Projects to the Latest Version

アプリケーションを更新するために必要なすべての手順の完全な概要を取得しました。 素晴らしい!

更新する前の

How to Update Angular Projects to the Latest Version 更新する前の

リストには12個のアイテムが含まれています。 Angular Todoアプリケーションには誰も利用できないため、次のステップに安全に進むことができます。

更新期間

更新期間リストでは、最後のアイテムのみがアプリケーションに適用されます。依存関係を更新する必要があるので、プロジェクトのルートで提案されたコマンドを実行しましょう。

npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
angular CLIを

Up and Runningセクションの最新バージョンに更新したため、ローカルバージョンも更新しました。 アプリケーションが正しく実行されていることを確認するには、実行されます。

npm uninstall -g @angular/cli angular-cli
npm cache clean
npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

開始に失敗した場合は、ディレクトリと

ファイルを削除してから
git clone git@github.com:sitepoint-editors/angular-todo-app.git
cd angular-todo-app
git checkout part-5
npm install
ng serve
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
を実行して、

ディレクトリとng serveファイルを再現します。 node_modules 更新後package-lock.jsonnpm install node_modulespackage-lock.json更新の後、

リストには4つのアイテムが含まれています。最初と最後の項目はアプリケーションに適用されます。

httpmoduleからhttpclientmodule

に切り替えます RXJSオペレーターをRXJS/オペレーターからインポートし、RXJSパイプラインオペレーターを使用します

    それらを1つずつ解決しましょう。
  • httpmoduleからhttpclientmodule
  • に切り替えます
  • Angular Updateガイドは、httpmoduleからhttpclientmoduleに切り替える必要があることを示しています。

Angularバージョン5.0.0のリリースノートを確認すると、Angular 4.3以降がJSON応答を自動的に処理してHTTPインターセプターをサポートする新しいHTTPClientが付属していることがわかります。

コードを更新するには、httpclientModuleにhttpmoduleを置き換え、httpclientサービスを挿入し、すべての

呼び出しを削除する必要があると述べています。

を開いて、httpmodule:

を交換しましょう

map(res => res.json()) httpclientModuleを使用:

src/app/app.module.ts次に、新しいHTTPCLIENTが私たちの応答を自動的に解析するため、HTTPサービスの代わりにHTTPCLIENTサービスを使用し、コード内のすべての

呼び出しを削除する必要があります。
<code> v0.0.3 // 修复错误前
 v0.0.4 // 修复错误后</code>
ログイン後にコピー
ログイン後にコピー
パート3では、Apiserviceと呼ばれるサービスにすべてのHTTP関連コードを集中しており、このアプローチの利点を享受しています。

では、1つのファイルを更新するだけである必要があるため、
<code> v0.2.4 // 添加新功能前
 v0.3.0 // 添加新功能后</code>
ログイン後にコピー
ログイン後にコピー
を開いて置き換えてみましょう。

map(res => res.json())使用法:

httpmoduleの古いクラスをhttpclientmoduleの新しいクラスに置き換えます。

より具体的には、次のものを置き換えます

  • import { Http, Headers, RequestOptions, Response } from '@angular/http';import { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';
  • の場合
  • 行81:ResponseHttpErrorResponse
  • の場合
  • 行90:HeadersHttpHeaders
  • の場合
  • 行93:return new RequestOptions({ headers });return { headers };
  • の場合

実行する場合:

npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

https://www.php.cn/link/03e03424a898e574153a10db9a4db79aにブラウザをナビゲートします。 プロジェクト2を解決する時が来ました:RXJS/オペレーターからRXJSオペレーターをインポートし、RXJSパイプラインオペレーターを使用します。

RXJSパイプラインオペレーターの使用

Angular 5は、RXJS 5.5.2以降を使用するように更新されました。

バージョン5.5から始めて、RXJSには配管可能な演算子が付属しています。公式文書には次のように書かれています

pipeableオペレーターは、次の署名で関数を返す機能です:

<T, R>(source: Observable<T>) => Observable<R>

ポジションから必要なオペレーターを抽出します(
(複数!)。また、必要な観察可能な作成方法を直接抽出することもお勧めします。以下に示すように、使用範囲:

rxjs/operators

これは複雑に聞こえますが、基本的には以前に鎖の方法を使用した場所を意味します。
npm uninstall -g @angular/cli angular-cli
npm cache clean
npm install -g @angular/cli@latest
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ここで、

メソッドを使用してオペレーターをインポートし、それらを適用する必要があります:

git clone git@github.com:sitepoint-editors/angular-todo-app.git
cd angular-todo-app
git checkout part-5
npm install
ng serve
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

配管可能な演算子の主な利点は次のとおりです rxjs/operators .pipe()彼らはツリーシャッキングであり、ツールが未使用のコードを削除してアプリケーションパッケージのサイズを削減できるようにします。

<code> v0.0.3 // 修复错误前
 v0.0.4 // 修复错误后</code>
ログイン後にコピー
ログイン後にコピー
これらは通常の関数なので、独自のカスタム配管可能な演算子を簡単に作成できます。

  1. メソッドは、コードへの影響を最小限に抑えます。
  2. アプリケーションには、リファクタリングする必要がある2つのプロジェクトがあります。ApiserviceとTodosComponentです。
最初に、

を開いて、apiservice:.pipe()を更新しましょう

pipetableオペレーターを

からインポートし、src/app/api.service.tsのすべての発生を

に更新します。
<code> v0.2.4 // 添加新功能前
 v0.3.0 // 添加新功能后</code>
ログイン後にコピー
ログイン後にコピー

次に、同じ変更をtodoscomponentに適用するためにrxjs/operatorsを開きましょう。 map 同様に、 pipetableオペレーターをmap(fn)からpipe(map(fn))に更新して

にインポートします。

src/app/todos/todos.component.tsそれだけです! Angular Update Guideが指示するように、当社のアプリケーションのチェーンズオペレーターは、配管可能な演算子に置き換えられました。

に移動する場合。 Angular 5を実際に実行していることを確認するために、要素検査官を開くことができます:

How to Update Angular Projects to the Latest Version Angularは、実行中のバージョンの値を使用して、

プロパティを

に追加します。 Angular 5.2.9を実行していることを示しています。 ng-version app-rootミッションが完了しました!当社のアプリケーションは、Angular 5.2.9に正常にアップグレードされました。 ng-version="5.2.9"

私たちはたくさんカバーしているので、学んだことを見てみましょう。

要約

最初の記事では、どのように学びましたか:

Angular Cli

を使用してTODOアプリケーションを初期化します
    単一のtodo
  • を表すためにtodoクラスを作成します
  • tododataServiceサービスを作成して、todo
  • を作成、更新、削除します
  • AppComponentコンポーネントを使用して、ユーザーインターフェイスを表示
  • に表示します
  • アプリケーションをgithubページに展開します。
  • 2番目の記事では、AppComponentをリファクタリングして、その作業のほとんどを次のように委任しました。
  • todoリストを表示するtodolistcomponent

単一のtodo
    を表示するtodolistitemcomponent
  • 新しいtodo
  • を作成するdolistheadeadercomponent
  • TodolistFooterComponentが残っているTodosの数を示します。
  • 3番目の記事では、どのように学びましたか:
シミュレートされたREST APIバックエンドを作成します

API URLを環境変数として保存する

    APISERVICEを作成して、REST API
  • と通信します
  • 新しいApiserviceを使用するようにtododataserviceを更新します
  • 非同期API呼び出しを処理するAppComponentを更新
  • ユニットテストを実行するときに実際のHTTP呼び出しを避けるために、ApimockServiceを作成します。
  • 4番目の記事では、
  • を学びました
  • アプリケーションがルーティングが必要になるのは

javaScriptルーターとは?

    角度ルーターとは、どのように機能し、何ができるか
  • Angularルーターをセットアップしてアプリケーションのルーティングを構成する方法
  • 角度ルーターを伝える方法DOMのコンポーネントをどこに配置するか
  • 不明なURLを優雅に処理する方法
  • パーサーを使用して角度ルーターの解析データを作成する方法。
  • 5番目の記事で、
  • を学びました
    • CookieとTokensの違い
    • 認証ロジックを実装するためのauthserviceを作成する方法
    • セッションデータを保存するためのセッションサービスを作成する方法
    • Angular Reactive Formを使用してログインフォームを作成する方法
    • アプリケーションの部分への不正アクセスを防ぐためのルートガードを作成する方法
    • httpリクエストで承認ヘッダーとしてユーザーのトークンをAPIに送信する方法
    • なぜユーザーのトークンをサードパーティに送信しないでください。

    Angularを更新する方法に関するこの記事では、

    • Angularバージョンはどのように機能しますか
    • セマンティックバージョン番号の意味
    • どのようにセマンティックバージョンが私たちをアプリケーションに盲目的に導入することから私たちを守る方法
    • Angular Update GuideがAngularの更新方法に関する詳細な指示を見つけるのに役立つ httpmoduleをhttpclientmodule
    • に置き換える方法 pipeable演算子を使用してRXJSコードを更新する方法
    • プロパティ実行中のAngularのバージョンを確認しましょう。 ng-version
    今後のリリースでは、Angular CLIが

    コマンドを導入して、Angularアプリケーションを更新します。もう一度詳細が利用可能になりました。この新しいコマンドが私たちの生活をどのように容易にするかについてのフォローアップ記事を提供します。 ng update この前に、この記事を最新バージョンにAngularアプリケーションを更新する方法に関するガイドとして使用できます。

    この記事のすべてのコードは、githubで見つけることができます。

    皆様のご多幸をお祈り申し上げます。

    Angular Projects(FAQ)

    の更新に関するFAQ

    Angularプロジェクトを更新するための前提条件は何ですか?

    Angularプロジェクトの更新を開始する前に、node.jsとNPMの最新バージョンがインストールされていることを確認してください。ターミナルで

    および

    を実行してバージョンを確認できます。それらをインストールしていない場合、またはバージョンの有効期限が切れている場合は、公式node.js Webサイトにアクセスしてダウンロードしてインストールしてください。また、Angular CLIが最新バージョンであることを確認してください。ターミナルで

    を実行して更新できます。

    node -vAngularプロジェクトを特定のバージョンに更新するにはどうすればよいですか? npm -v npm install -g @angular/cliAngular Projectを特定のバージョンに更新するには、コマンドを使用してパッケージ名とバージョン番号を使用できます。たとえば、Angular 9に更新する場合は、端末で

    を実行します。作業を失わないように、更新コマンドを実行する前にプロジェクトに変更を送信することを忘れないでください。

    更新プロセス中にエラーが発生した場合はどうすればよいですか?

    更新プロセス中にエラーが発生した場合は、最初にエラーメッセージを理解してみてください。通常、どこでうまくいかなかったかについての手がかりが含まれています。問題を解決できない場合は、Angularコミュニティから助けを求めることを検討してください。 Stackoverflowのようなサイトには、問題のトラブルシューティングに役立つ多くの経験豊富な開発者がいます。エラーに遭遇する前に実行したエラーメッセージやステップなど、できるだけ多くの問題について詳細を提供することを忘れないでください。

    Angularプロジェクトを以前のバージョンにダウングレードする方法は?

    Angularプロジェクトを以前のバージョンにダウングレードするのは、通常、

    ファイルのバージョン番号を変更するだけではないため、少し難しい場合があります。また、他の依存関係をダウングレードし、コードを微調整して古いバージョンと互換性のあるものにする必要がある場合があります。ダウングレードが必要な場合は、Angular Communityの支援を求めるか、プロセスがスムーズに進むようにプロの開発者を雇うことを検討してください。 package.json

    各角度更新の変更を追跡する方法は?

    Angularチームは、公式Webサイトの更新ごとに詳細なリリースノートを提供します。これらの指示には、アップデートで導入された変更の概要、バグ修正、新機能が含まれます。また、

    コマンドを使用して、--dry-runオプションを使用して、実際にそれらを適用せずにプロジェクトの変更が行われるかを確認することもできます。 ng update

    更新後に角度プロジェクトをテストする方法は?

    Angularプロジェクトを更新した後、それを徹底的にテストして、すべてが予想どおりに機能することを確認してください。 KarmaやProtractorなどのAngular CLIの組み込みテストツールを使用して、プロジェクトでユニットテストとエンドツーエンドテストを実行できます。問題がある場合は、エラーメッセージとそれらを解決する方法についてはAngularドキュメントを参照してください。

    Angularプロジェクトをどのくらいの頻度で更新する必要がありますか?

    更新の頻度は、プロジェクトの特定の要件と使用している角度バージョンの安定性によって異なります。ただし、通常、最新の安定したバージョンを使用して、最新の機能と改善を活用するために更新を続けることが最善です。各更新後にプロジェクトを徹底的にテストして、すべてが予想どおりに機能することを確認することを忘れないでください。

    Angularプロジェクトを更新するときは、

    バージョンをスキップできますか?

    はい、Angularプロジェクトを更新するときにバージョンをスキップできます。ただし、潜在的な問題を回避するために、一度に1つのメジャーバージョンを更新することをお勧めします。非常に古いバージョンから更新している場合は、Angular Communityの支援を求めるか、プロセスがスムーズに進むことを確認するためにプロの開発者を雇うことを検討してください。

    Angularプロジェクトを更新することの利点は何ですか?

    Angularプロジェクトを更新して、最新の機能、改善、バグ修正の恩恵を受けます。また、他の最新のテクノロジーとプロジェクトを安全に互換性のあるものに保つのにも役立ちます。ただし、各更新後にプロジェクトを徹底的にテストして、すべてが予想どおりに機能することを確認することを忘れないでください。

    角度プロジェクトの更新プロセスを自動化する方法は?

    JenkinsやTravis CIなどの継続的な統合(CI)ツールを使用して、Angularプロジェクトの更新プロセスを自動化できます。これらのツールは、リポジトリに変更をプッシュするたびに、ng updateコマンドとテストを自動的に実行できます。これは、プロジェクトが常に最新の状態であり、適切に機能することを保証するのに役立ちます。

以上がAngularプロジェクトを最新バージョンに更新する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート