有没有办法在构建中包含目录,而不在资源文件夹中?

时间:2017-05-16 22:50:10

标签: angular angular-cli

我有一个嵌入网站的Angular 4应用程序。嵌入到网站中时,我在引用的服务器根目录中有一些共享文件。我的问题是,我希望能够在我进行开发时引用我的应用程序中服务器上的那些文件,因此我将该文件夹复制到我的角应用程序的根目录,但是当应用程序构建时,该文件夹不会被复制。

例如,我的根目录中有一个名为/media的文件夹,与/src文件夹位于同一级别。当我执行ng build或者我只是在本地保存并查看我的应用时,媒体应用程序不会被复制,所以我无法看到它。将它添加到/assets文件夹不是一个选项,所以我试图弄清楚如何在构建上复制其他文件。

我在angular.cli.json文件中尝试过这样的设置,如下所示: "assets": [ "assets", "../media", "favicon.ico", "favicon-test.ico", "../favicon-test-2.ico" ],

当我运行构建时,我只看到了 资产,favicon.ico和favicon-test.ico 但我没有看到媒体目录或favicon-test-2.ico文件。

1 个答案:

答案 0 :(得分:5)

您可以通过在

中添加路径来添加要构建的自定义文件夹

Angular 5

文件名:.angular.cli.json

"apps": [
  {
    "root": "src",
    "outDir": "dist",
    "assets": [
      "assets",
      "myFolder2/", // custom folders 1
      "myfolder2/", // custom folders 2,
      "file.json"   // custom files
    ],
  }
]

Angular 6

文件名:angular.json

"architect": {
  "build": {
    "options: {
       "assets": [
         "assets",
         "myFolder2/", // custom folders 1
         "myfolder2/", // custom folders 2,
         "file.json"   // custom files
        ]
     }
   }
 }

当您运行dist时,资产数组中提到的文件和文件夹将添加到ng build文件夹