我正在尝试使用本教程将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"替换为"ng build --watch"和"ng serve",但它们都不起作用。构建仅挂起以下步骤:
------ Build started: Project: Properties Web, Configuration: Debug Any CPU ------
除此之外,我尝试在TS配置文件中将"CompileOnSave"设置为"true",但这个也没有帮助。
我正在使用Visual Studio 2017,以及所有最新版本的Node,NPM和Angular CLi。
欢迎任何建议。提前谢谢。
我假设您不想在 C# 代码更改时重新生成整个 angular 应用程序,但您希望观察 Angular 应用程序中的更改以自动重建。
要实现这一点,你必须在单独的终端(cmd或Gitbash(中运行ng build --watch --ec命令。这将为您观看Angular应用程序中的变化。
此外,还需要删除生成配置文件中的 Target NgDebug,以防止 Visual Studio 在每次重新生成 C# 代码时重新生成 Angular 应用。
请使用ng build --watch --ec
它对我有用。
如果您在 Exec 中将其用作构建目标的一部分,则在 ng build
上使用 --watch
标志将不起作用,因为它使进程保持打开状态以监视对 Angular 项目的文件更改。出于同样的原因,使用 ng serve
将挂起构建。
按照 Tai Le 的建议,您需要在单独的命令窗口中运行这些正在进行的进程,或者坚持重新生成更改,以允许 VS 使用您包含在 csproj 文件中的构建目标为您处理它。