1. ホーム
  2. タイプスクリプト

[解決済み】Angularアプリのデプロイはどうやるの?

2022-04-11 16:24:20

質問

Angularアプリが本番環境に到達したら、どのようにデプロイしますか?

私がこれまで見てきたすべてのガイド(たとえそれが angular.io しかし、開発が完了した後、どのようにアプリを公開することができますか?

コンパイルされた .js ファイルを index.html ページで、あるいはgulpを使ってminifyするのでしょうか?うまくいきますか?製品版ではSystemJSは全く必要ないのでしょうか?

解決方法は?

実は、あなたはここで2つの質問に1つずつ触れているのです。

1つ目 アプリケーションをどのようにホストするか? .

そして、@toskvが言ったように、その質問は本当に広範すぎて答えられないし、多くの異なるものに依存する。

2つ目 デプロイメント版のアプリケーションはどのように準備するのですか? .

ここでは、いくつかの選択肢があります。

  1. そのままデプロイする。最小化、連結、名前変更など一切なし。tsプロジェクトをトランスパイルして、出来上がったjs/css/...のソースと依存関係をすべてホスティングサーバーにコピーすれば、それでOKです。
  2. のような特別なバンドルツールを使ってデプロイします。 webpack または systemjs ビルダーです。

    1に欠けているすべての可能性を備えている。

    アプリのコードをすべてjs/css/...ファイルにまとめ、HTMLの中で参照できるようにすることができます。 systemjs ビルダーを使えば、includeする必要のない systemjs をデプロイメントパッケージの一部として使用します。

  3. を使用することができます。 ng deploy Angular 8 では、CLI からアプリをデプロイすることができます。 ng deploy は、選択したプラットフォームと組み合わせて使用する必要があります(例えば @angular/fire ). 公式のドキュメントをチェックして、何が最適か確認することができます。 こちら

はい、ほとんどの場合、デプロイする必要があります。 systemjs と他の外部ライブラリの束をパッケージの一部として使用します。そして、HTMLページから参照する数個のjsファイルにそれらをバンドルすることができるようになります。

ただし、コンパイルしたすべての js ファイルをページから参照する必要はありません。 systemjs をモジュールローダーとして使用することで、その処理を行うことができます。

泥臭い話ですが、#2 を始めるにあたって、本当に良いサンプルアプリケーションを2つ紹介します。

SystemJSビルダーです。 angular2シード

WebPackです。 angular2 webpack スターター