Visual Studio 2017(バージョン15.7.2)で.Net Core 2.1 Angularアプリケーションを作成します
Spa.UseAngularCliServer()が開発モードでページを提供する方法を知りたいです。
デバッグモードでは、Webページは正常に読み込まれますが、ClientAppまたはwwwrootフォルダーに「dist」フォルダーはありません。 distフォルダーはどこにありますか?
スパミドルウェアがangular-cli devサーバーを起動するように見えますが、Webページは実際にはIIS Expressによってホストされています。 「ng serve」はIIS Expressとどのように関連していますか?
Starup.csのフォーム
app.UseSpa(spa =>
{
// To learn more about options for serving an Angular SPA from ASP.NET Core,
// see https://go.Microsoft.com/fwlink/?linkid=864501
spa.Options.SourcePath = "ClientApp";
if (env.IsDevelopment())
{
spa.UseAngularCliServer(npmScript: "start");
}
});
Angular CLIによって内部的に使用されるwebpack開発サーバーによってファイルが構築され、メモリ内に保持されるため、distフォルダーは必要ありません。
SPAのリクエストは、IISによってAngular Dev Serverに逆プロキシされます。そのため、IISはブラウザからリクエストを受信します-> IISはangular dev server-> dev serverにリクエストを送信しますIIS-> IISブラウザにデータを送信します。