我在Visual Studio 2017中有一个基于angular-cli
的项目。我按照以下链接进行此设置,它可以正常工作。
http://candordeveloper.com/2017/04/12/how-to-use-angular-cli-with-visual-studio-2017/
我的预建活动中有以下内容:
echo "cd $(SolutionDir)" &&^
cd "$(SolutionDir)" &&^
echo "Building Project" &&^
ng build &&^
echo 'copy files' &&^
当我在Visual Studio中构建或重建项目时,这可以正常工作。它基于angular-cli.json在我的输出目录中生成包文件。
但我需要一种方法来监视Visual Studio内ng build
的变化。我在预构建事件中尝试ng build --watch
,但在进行此更改后,我的构建过程陷入困境。我可以看到使用所有正确的bundle文件生成输出目录,但构建过程永远不会在Visual Studio 2017中完成。
作为解决方法,我没有在单独的命令窗口中运行ng build --watch
。这适用于并观察TypeScript,HTML,CSS更改和重建(如预期的那样)。但是想在Visual Studio 2017中集成它。
注意:我的tsconfig.json中已经有"compileOnSave": true
,但与ng build
不一样。
感谢。
答案 0 :(得分:4)
如果有人仍在寻找答案,这就是我在VStudio中为预构建事件添加的内容:
powershell start-process "cmd " """/k ng build --watch"""
它会打开一个新的cmd窗口,启动ng构建过程并继续等待更改。当然,完成调试会话后必须终止cmd窗口。否则,它会在您下次点击F5时打开一个新的cmd窗口
答案 1 :(得分:2)
我认为它在Visual Studio中不能作为构建事件的一部分工作的原因是Visual Studio在继续构建过程之前等待脚本完成。在观看时,作为Angular CLI构建过程的一部分,脚本永远不会“完成”,因为它会不断监视更改。
我个人希望自己实现自动化。