Dart で Web アプリを構築する
このページでは、Dart で **Web 専用** アプリの開発を開始する手順について説明します。**マルチプラットフォーム** アプリを記述したい場合は、Flutter を試してください。
開始する前に、Dart の紹介 を読んで Dart の基本を理解していることを確認してください。次に、以下の手順に従って、Dart で小さな Web アプリを作成します。
1. Dart のインストール
#実際のアプリを開発するには SDK が必要です。Dart SDK を直接ダウンロードする (以下で説明) か、完全な Dart SDK を含む Flutter SDK をダウンロード できます。
- 以下の初回限定セットアップを実行します - sudo apt-get update sudo apt-get install apt-transport-https wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /usr/share/keyrings/dart.gpg echo 'deb [signed-by=/usr/share/keyrings/dart.gpg arch=amd64] https://storage.googleapis.com/download.dartlang.org/linux/debian stable main' | sudo tee /etc/apt/sources.list.d/dart_stable.list
- Dart SDK のインストール - sudo apt-get update sudo apt-get install dart
Homebrew を使用すると、Dart のインストールが簡単になります。
brew tap dart-lang/dart
brew install dart2. CLI ツールまたは IDE (あるいはその両方) を入手する
#terminal コマンドラインを使用したい場合は、webdev パッケージをインストールします
dart pub global activate webdevweb IDE の使用はオプションですが、強く推奨します。利用可能な IDE のリストについては、エディタとデバッガの概要 を参照してください。
3. Web アプリを作成する
#terminal コマンドラインから Web アプリを作成するには、web テンプレートで dart create コマンドを使用します
dart create -t web quickstartweb IDE で同じ Web アプリを作成するには、Dart が統合されている IDE で、Bare-bones Web App という名前のテンプレートを使用して プロジェクトを作成 します。
Web アプリテンプレートは、モダンな Web のために構築された、強力で簡潔な Dart の Web 相互運用ソリューションである package:web をインポートします。詳細については、Web 相互運用の概要 を確認してください。
4. アプリを実行する
#terminal コマンドラインからアプリを実行するには、webdev を使用してアプリをビルドおよび提供します
cd quickstart
webdev serveweb または、IDE からアプリを実行します。
アプリを表示するには、Chrome ブラウザを使用してアプリの URL (例: localhost:8080) にアクセスします。
IDE を使用するかコマンドラインを使用するかに関わらず、webdev serve は開発用 JavaScript コンパイラを使用してアプリをビルドして提供します。開発用コンパイラが初めてアプリをビルドして提供する際に、起動に最も時間がかかります。それ以降は、アセットがディスクにキャッシュされ、増分ビルドがはるかに高速になります。
アプリがコンパイルされると、ブラウザに「Your Dart app is running.」と表示されるはずです。

5. アプリにカスタムコードを追加する
#作成したアプリをカスタマイズしましょう。
- 次のスニペットから - thingsTodo()関数を- web/main.dartファイルにコピーしますdart- Iterable<String> thingsTodo() sync* { const actions = ['Walk', 'Wash', 'Feed']; const pets = ['cats', 'dogs']; for (final action in actions) { for (final pet in pets) { if (pet != 'cats' || action == 'Feed') { yield '$action the $pet'; } } } }
- newLI()関数 (以下に示す) を追加します。これは、指定された- Stringを含む新しい- LIElementを作成します。dart- Iterable<String> thingsTodo() sync* { /* ... */ } HTMLLIElement newLI(String itemText) => (document.createElement('li') as HTMLLIElement)..text = itemText; void main() { /* ... */ }
- main()関数で、- thingsTodo()の値を使用して- output要素にコンテンツを追加します- appendChildとdart- Iterable<String> thingsTodo() sync* { /* ... */ } HTMLLIElement newLI(String itemText) => (document.createElement('li') as HTMLLIElement)..text = itemText; void main() { final output = querySelector('#output'); for (final item in thingsTodo()) { output?.appendChild(newLI(item)); } }
- 変更を保存します。 
- webdevツールはアプリを自動的に再ビルドします。アプリのブラウザウィンドウを更新します。これで、シンプルな Dart アプリにToDo リストが表示されました!次のようになっているはずです。
  
- 必要に応じて、 - web/styles.cssを編集してフォーマットを改善し、アプリをリロードして変更を確認してください。css- #output { padding: 20px; text-align: left; }
6. Dart DevTools を使用してアプリを検査する
#Dart DevTools を使用してブレークポイントを設定し、値と型を表示し、アプリの Dart コードをステップ実行します。セットアップの詳細とウォークスルーについては、Dart Web アプリのデバッグ を参照してください。
7. Web アプリをビルドしてデプロイする
#Web アプリを開発環境外で実行するには、ビルドしてデプロイする必要があります。Dart Web アプリのデプロイに関する詳細については、Web デプロイ を確認してください。
次は何をしますか?
#これらのリソースを確認してください
- Dart 言語、ライブラリ、および規約
- Web 開発
- Dart チュートリアル
行き詰まった場合は、コミュニティとサポート でヘルプを見つけてください。