使用Angular-CLI构建来复制文件/目录

Ami*_*mit 11 angular-cli

有没有办法使angular-cli ng buil --prod命令也将文件/目录复制到dist文件夹?

我的项目包括一个"server"文件夹和一个root的"config.js"文件,我需要将它们复制到"dist",以便在构建时,我不需要记住复制这些目录

Ste*_*ane 25

对于那些想要复制文件src夹外的文件的人:

在下面的示例中,我将所有文件复制myfolder到根dist文件夹.

在angular-cli.json文件中(第3行):

"assets": [
   { "glob": "**/*", "input": "./assets/", "output": "./assets/" },
   { "glob": "favicon.ico", "input": "./", "output": "./" },
   { "glob": "**/*", "input": "../myfolder", "output": "./" }
],
Run Code Online (Sandbox Code Playgroud)

Angular-cli.json文档在这里

  • 将 project.json 文件从 root 复制到 dist { "glob": "project.json", "input": "./", "output": "/" } (4认同)

小智 9

在资产对象上的angular-cli.json上,添加要包含的文件夹,例如:

"assets": [
    "assets",
    "favicon.ico",
    "META-INF",
    "WEB-INF"
  ]
Run Code Online (Sandbox Code Playgroud)

  • 我正在尝试复制一个目录,但是没有被复制,该目录在`src`文件夹之外,所以我将路径指定为`../ my_dir`,然后运行命令`ng build --prod`,仅运行`assets `和`favicon.ico`已复制到`dist`文件夹中。my_dir`文件夹未复制。 (2认同)

Cod*_*Spy 5

来源链接

对于ng 构建,请使用“postbuild”命令复制文件夹/文件

更新package.json文件

从

"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
....
Run Code Online (Sandbox Code Playgroud)

},

到

"scripts": {
   "ng": "ng",
   "start": "ng serve",
   "build": "ng build && npm run postbuild",
   "postbuild":"xcopy /s \".\/dist\\angular-material-bottom-sheet-app\" \".\/mydistapp\\dist\" \/Y",
   "test": "ng test",
   "lint": "ng lint",
   "e2e": "ng e2e"
},
Run Code Online (Sandbox Code Playgroud)

在这里查看完整的详细信息