我正在尝试使用tutorial将Angular CLI设置为ASP.Net MVC项目。
完成所有描述的步骤后,我可以成功运行我的项目,但问题是,每次进行任何更改时都必须重建项目,这非常烦人。
根据教程,Angular的构建命令由.csproj文件的以下脚本处理:
<Target Name="NgDebug" BeforeTargets="Build" Condition="'$(Configuration)' == 'Debug'">
<Exec WorkingDirectory="$(ProjectDir)HelloAngular" Command="ng build -ec" />
</Target>
我尝试用'ng build --watch'和'ng serve'替换'ng build',但它们都没有用。构建只是挂起在以下步骤:
------ Build started: Project: Properties Web, Configuration: Debug Any CPU ------
除此之外,我试图在TS Config文件中将'CompileOnSave'设置为'true',但这个也没有帮助。
我使用的是Visual Studio 2017,以及Node,NPM和Angular CLi的所有最新版本。
欢迎任何建议。提前谢谢。
答案 0 :(得分:1)
我假设您不希望在C#代码更改时就重新构建整个angular应用程序,但是您要监视Angular应用程序中的更改以自动重新构建。
要实现此目的,您必须在单独的终端(cmd或Gitbash)中运行 ng build --watch --ec 命令。这将为您监视Angular应用程序中的更改。
此外,您还需要在构建配置文件中删除Target NgDebug,以防止每次重新构建C#代码时Visual Studio都重新构建Angular App。
答案 1 :(得分:0)
请使用ng build --watch --ec
它为我工作。
答案 2 :(得分:0)
如果您在Exec中将其用作构建目标的一部分,则在--watch
上使用ng build
标志将不不起作用,因为它使进程保持打开状态以监视文件更改为Angular项目。出于相同的原因,使用ng serve
将挂起构建。
按照Tai Le的建议,您需要在单独的命令窗口中运行这些正在进行的过程,或者坚持重建更改,以使VS可以通过包含在您的构建目标中来为您处理csproj文件。