やあ
Flutter Webプロジェクトで、「デバッグせずに開始」すると、
Chromeウィンドウがランダムなポートで開きます
ただし、機能テストを行うために、ポートを指定したいのですが
そのポート番号を指定できる構成はありますか?
現在、VSCodeからそのポートを指定することはできません。 でも、追加するのは簡単なはずだと思います。 それまでの間、アプリを手動で起動すると( webdev serve
を実行し、ポートを渡すことで、https://pub.dev/packages/webdev#usageを参照)、うまくいけばうまくいきます(これはVSCodeの「タスク」からのものなので、IDEからすばやく実行できます)。
どうやら追加するのは簡単ではなく、webdevでのサポートが必要です(上記の引数はdaemon
モードには適用されません)。
これは、Flutterの--web-port
引数で可能になりました。 次のようにlaunch.json
構成に追加できます。
{
"name": "Flutter",
"request": "launch",
"type": "dart",
"args": ["--web-port", "8686"]
},
dart.flutterAdditionalArgs
で設定することもできますが、その場合、ワークスペース全体またはすべてのアプリに適用されます(設定した場所によって異なります)。
注:これは、フォークされていないWebサポート(マスターブランチでは使用できません)でのみ機能します。
@DanTup flutter run -d chrome --web-hostname localhost --web-port 7357
を使用してコマンドラインからフラッターを実行するときにポート番号を指定できますが、launch.jsonからそのポートを自動的に使用する方法を理解できません。 これが私のlaunch.jsonです...それはすべて合計されますか? ランダムなポートで起動するだけです。
{
"version": "0.2.0",
"configurations": [
{
"name": "Dart",
"type": "dart",
"request": "launch",
"program": "lib/main.dart"
},
{
"name": "Flutter",
"request": "launch",
"type": "dart",
"args": ["--web-port", "7357"]
}
]
}
@Ollynovには2つの起動構成があるように見えるので、実行サイドバーで2番目の構成( Flutterという名前)を選択しない限り、効果はありません。 これらを1つの構成にマージして、これを修正する必要があります。
{
"name": "Flutter (port 7375)",
"type": "dart",
"request": "launch",
"program": "lib/main.dart"
"args": ["--web-port", "7357"]
}
最も参考になるコメント
これは、Flutterの
--web-port
引数で可能になりました。 次のようにlaunch.json
構成に追加できます。dart.flutterAdditionalArgs
で設定することもできますが、その場合、ワークスペース全体またはすべてのアプリに適用されます(設定した場所によって異なります)。注:これは、フォークされていないWebサポート(マスターブランチでは使用できません)でのみ機能します。