3

私はasp.netコア2.2反応テンプレートベースのアプリを持っています

ClientApp の下の反応アプリには、「npm run build」カスタム スクリプトを介して ClientApp の下の lib フォルダーにあるものをコンパイルする反応アプリ用の独自のビルド スクリプトがあります。

さらに重要なことに、アプリはカスタム ノード/エクスプレス ベースの Web サーバーで実行されます (clientapp で npm run start を実行すると、たとえばポート 6000 でリッスンする Web サーバー スクリプトが起動されます)。

テンプレートに付属している標準の反応開発サーバーを使用できません。asp.net コア レイヤーの startup.cs ファイルは、spa.UseProxyToSpaDevelopmentServer ( http://localhost:6000 )経由でそれを使用します。

app.UseSpa (spa =>
             {
                 spa.Options.SourcePath = "ClientApp";
                 if (env.IsDevelopment ())
                     {
                     string reactDevServerUri = Configuration["ReactDevServerUri"];
                     spa.UseProxyToSpaDevelopmentServer(reactDevServerUri);
                     }
             });

vs 2017 でのデバッグ セッション中に、ClientApp\src フォルダー内の typescript ファイルが変更された場合、1
. ClientApp\package.json 内のスクリプト 'build' を呼び出して、ClientApp\lib フォルダー内の反応アプリをコンパイルする必要があります。 2. Web サーバーを再起動します。スクリプト「start」を介して実行して、lib の新しい変更を選択します
3.ブラウザをリロードします

現在、nodemonを使用して反応アプリの変更を追跡し、ビルドスクリプト後にサーバーを再起動する「デバッグ」スクリプトを追加しました

    "debug": "nodemon -e ts,tsx --watch src --exec \"npm run build && npm run start\""

私はまだブラウザを自分でリロードする必要があり、ビルド/開始が完了するまで失敗し続けます。カプセル化asp.netコアプロジェクトを適切に構成することにより、これを一度に行うためのより良い方法が必要です。

私が方法を理解するのを手伝ってください:)

4

0 に答える 0