设置:
的.csproj:
<Target Name="NgDebug" BeforeTargets="Build" Condition="'$(Configuration)' == 'Debug'">
<Exec WorkingDirectory="$(ProjectDir)admin-client" Command="ng build -ec" />
</Target>
<Target Name="NgRelease" BeforeTargets="Build" Condition="'$(Configuration)' == 'Release'">
<Exec WorkingDirectory="$(ProjectDir)admin-client" Command="ng build --prod" />
</Target>
问题:
Command="ng build -ec"
时,构建会无限期挂起,并且不会抛出任何错误。1>------ Build started: Project: CorpNet.Admin.Web, Configuration: Debug Any CPU ------
我的解决方案:
应用程序启动后,我通过命令行运行build -ec -w,一切正常。
问题:
如何将--watch (-w)
添加到ng build -ec
作为构建过程的一部分,而不是从命令行手动运行?
答案 0 :(得分:3)
你不应该。
构建需要命令才能完成。即使您从构建中生成了一个观察过程,也无法控制该应用程序的生命周期。
所以csproj构建期间的单个构建是可以的,但是在构建完成之后,不应该留下额外的进程。根据您用于构建的工具,csproj文件甚至可以构建多次(设计时构建与实际构建)。
然而,您可以从应用程序内部运行角度命令,以便Angular Cli可以在应用程序运行时重建客户端部分。
对于ASP.NET Core,可以使用SPA服务轻松设置,该服务负责将Angular CLI与ASP.NET Core管道集成(2.0的可安装模板,集成在即将推出的2.1工具中)。见Use the Angular project template with ASP.NET Core