使用 Angular 的 ng serve/ng build --watch in Visual Studio 中的 ASP.Net Project



我正在尝试使用本教程将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 文件中的构建目标为您处理它。

最新更新