Web デプロイ
Dart Web アプリのデプロイは、他の Web アプリのデプロイと同様に行えます。このページでは、アプリのコンパイル方法、アプリをより小さく、より速くするためのヒント、およびアプリの提供リソースについて説明します。
アプリのビルド
#webdev ツールを使用してアプリをビルドします。このツールは Dart を JavaScript にコンパイルし、デプロイに必要なすべての資産を生成します。コンパイラのプロダクションモードを使用してビルドすると、ツリーシェイキングのコンパイラサポートのおかげで、 reasonably small な JavaScript ファイルが得られます。
少しの追加作業で、デプロイ可能なアプリを より小さく、より速く、より信頼性の高いもの にすることができます。
webdev でコンパイルする
#webdev build コマンドを使用 して、アプリのデプロイ可能なバージョンを作成します。このコマンドはコードを JavaScript に変換し、結果を build/web/main.dart.js として保存します。webdev build では、dart compile js で利用可能な任意のオプション を使用できます。
アプリをより小さく、より速く、より信頼性の高いものにする
#以下の手順はオプションです。アプリの信頼性と応答性を向上させるのに役立ちます。
遅延読み込みを使用してアプリの初期サイズを縮小する
#Dart の遅延読み込みサポートを使用して、アプリの初期ダウンロードサイズを縮小できます。詳細については、言語ツアーの 遅延読み込み の説明を参照してください。
Web アプリのベストプラクティスに従う
#Web アプリに関する一般的なアドバイスは、Dart Web アプリにも適用されます。以下にいくつかのリソースを示します。
不要なビルドファイルを削除する
#Web コンパイラは、開発中に便利なファイル(Dart から JavaScript へのマップファイルなど)を生成できますが、本番環境では不要になります。
これらのファイルを削除するには、以下のようなコマンドを実行できます。
# From the root directory of your app:
find build -type f -name "*.js.map" -exec rm {} +アプリの提供
#Dart Web アプリは、他の Web アプリと同様に提供できます。このセクションでは、Dart Web アプリの提供に関するヒント、および GitHub Pages や Firebase を使用してアプリを提供するための Dart 固有のリソースを紹介します。
GitHub Pages
#アプリがルーティングを使用しない、またはサーバーサイドのサポートを必要としない場合は、GitHub Pages を使用してアプリを提供できます。peanut パッケージは、任意の Dart Web アプリの gh-pages ブランチを自動的に生成する簡単な方法です。
startup_namer の例は、GitHub Pages を使用してホストされています。そのファイルは、filiph/startup_namer リポジトリの gh-pages ブランチにあり、peanut を使用してビルドされました。
Firebase
#Firebase を使用したデプロイの詳細については、以下のリソースを参照してください。
- Firebase Hosting ドキュメント には、Firebase を使用して Web アプリをデプロイする方法が記載されています。
- Firebase Hosting ドキュメントの Hosting の動作を構成する では、リダイレクト、リライトなどについて説明しています。