如何使ng build监视多个应用程序?

时间:2018-10-11 15:19:07

标签: angular angular-cli angular-cli-v6

我需要使用watch选项来构建2个应用程序(New1和New2),因此这2个应用程序中的任何文件更改都会导致重新构建。

ng build New1 && ng build New2工作正常,我可以看到两个应用程序都在/ dist目录下构建, 但是我无法让ng build --watch以相同的方式工作。到目前为止,我尝试过:

1)ng build New1 && ng build New2 --watch 生成两个应用程序,但仅观看New2。 如果我对New1进行更改,则构建不会再次发生。

2)ng build New1 --watch && ng build New2 --watch 仅构建并监视New1应用。

3)ng build New1 --output-path dist/New1 && ng build New2 --output-path dist/New2 --watch 生成两个应用程序,但仅观看New2。

4)ng build New1 --output-path dist/New1 --watch && ng build New2 --output-path dist/New2 --watch 仅构建并监视New1应用。

有没有办法在同一行中对两个应用程序使用build --watch?

欣赏建议。

Angular CLI: 6.2.4
Node: 10.11.0
OS: win32 x64
Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.8.4
@angular-devkit/core         0.8.4
@angular-devkit/schematics   0.8.4
@schematics/angular          0.8.4
@schematics/update           0.8.4
rxjs                         6.2.2
typescript                   2.9.2

2 个答案:

答案 0 :(得分:0)

for sentence in exg: for word in fruit_list: if word in sentence: print(f'{word}: {sentence}') break 不起作用的原因是,第一个构建需要在第二个构建开始之前完成。

我的解决方案?只需打开两个终端并在每个终端中运行一个ng build New1 --watch && ng build New2 --watch。如果您使用的是VS Code的内置终端,则它们将位于两个不同的选项卡中,但可以一起使用。

修改:计划B

假设您使用的是Windows,build --watch命令将打开一个新终端并返回。

所以您可以使用它,它应该可以正常工作:

start

答案 1 :(得分:0)

如果您尝试同时运行2个呼叫,建议您使用concurrently软件包:

https://www.npmjs.com/package/concurrently

合并通话非常容易。您将向package.json添加一个新脚本,并结合2个命令。下面的代码尚未通过您的代码测试,因此请阅读文档:

"build:concurrent": "concurrently \"ng build New1 --watch\" \"ng build New2 --watch\"",

然后您将在终端中使用npm run build:concurrent

运行它