ng build之后的angular-cli run命令

mrs*_*nce 20 angular-cli angular

我想知道如何在完成后扩展ng build以运行任务.

目前,我的最终目标是将我的'package.json'复制到dist文件夹.

如果我使用普通的npm,这样的事情:

"postbuild": "cpx ./package.json ./dist/",
Run Code Online (Sandbox Code Playgroud)

我知道在angular-cli.json中我可以使用"assets"来复制静态文件,但它不适用于src之外的文件.所以,我想知道在构建完成后我是否可以执行复制任务.

Ale*_*ski 27

定义npm脚本

"build":" "ng build"
Run Code Online (Sandbox Code Playgroud)

并添加postbuild脚本.

"postbuild": "cpx ./package.json ./dist/",
Run Code Online (Sandbox Code Playgroud)

这样,运行后会调用复制脚本npm run build.

  • 有没有办法在使用`ng build --watch`并在每次构建后运行脚本时使其工作? (28认同)
  • 在 Angular 7.2 中测试,但它仅在 --configure 等于开发时有效,而不是生产。如何为生产构建运行构建后脚本? (3认同)

peg*_*ier 6

您可以在任何 npm 脚本之前或之后执行任何自定义脚本。这称为“钩子”,它包含在 npm 中。在您的情况下,您可以执行“post”挂钩,但请记住,也可以执行“pre”挂钩。

在 package.json 中定义这 3 个脚本:

"hello": "echo execute hello",
"prehello": "echo execute prehello",
"posthello": "echo execute posthello"
Run Code Online (Sandbox Code Playgroud)

你可以在这里找到更多有用的信息:https : //www.marcusoft.net/2015/08/pre-and-post-hooks-for-npm-scripting.html