没有index.html的Angular CLI构建

时间:2018-08-14 12:37:48

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

我们所有的Angular应用程序都在其他应用程序(加载javascript文件并包含.jsp标签的<app-root>文件中引导),因此我们不需要index.html **。

但是,当我从我们的index中删除angular.json属性时,会出现以下错误:

  

数据路径“”应具有必需的属性“索引”。

如果我将其保留为空,它会生成但会出现错误:

  

...
   95%发出index-html-webpack-pluginEISDIR:对目录的非法操作,请阅读
  错误:EISDIR:对目录进行非法操作,请阅读

如何在没有ng build的情况下执行index.html

**我们的部署过程现在实际上将index.html复制到CDN,这是不需要的,因为我们根本不想将这些文件提供给最终用户,index.html仅用于ng serve

期间的开发人员

3 个答案:

答案 0 :(得分:5)

万一还有人遇到同样的问题,这就是我解决的方法。

在您的angular.json中:

"architect": {
  "build": {
    ...
    "configurations": {
      "production": {
        "index": "", // Do not copy index.html
        ...

ng build --prod将不会复制HTML文件,而ng buildng serve将继续按预期使用它。

答案 1 :(得分:1)

您可以在scripts的{​​{1}}部分中串联命令。因此,添加一个delete命令并创建类似这样的内容(Windows命令;使其适应您的系统):

package.json

答案 2 :(得分:0)

angular.json文件中添加以下行

"index": "myApp/index.html"

outputPath:./wwwroot/myapp/dist