使用弹出的Angular 4应用程序进行生产编译会生成大文件

时间:2017-06-06 23:54:58

标签: angular production-environment production angular2-aot

ng build --prod Angular CLI命令在Angular4应用程序中生成高度压缩的javascript文件。

当使用ng eject命令弹出应用程序时,Angular CLI命令消失了,我们留下了npm脚本(npm run build命令来构建应用程序),但不幸的是,该命令输出了非生产建立。

我尝试直接运行webpack -p命令,但与ng build --prod命令的输出相比,输出结果文件略微更大

如何在弹出的应用程序上获得等效于ng build --prod命令的压缩?什么命令/参数可以产生这样的结果?

1 个答案:

答案 0 :(得分:18)

您可以使用以下命令弹出webpack配置的生产版本:

ng eject --prod

修改

如果你想同时使用开发和发展弹出的webpack配置的生产版本,执行以下操作:

  1. 备份您现有的 package.json
  2. 执行ng eject --prod(这将弹出webpack配置的生产版本)

  3. 已撤消 webpack.config.json重命名为 webpack.config-prod.json

  4. 恢复备份的 package.json (实际的更改几乎就是脚本和新的软件包)。您可能还想编辑.angular-cli.json并将ejected属性更改为false。
  5. 执行ng eject(这将弹出开发版本)。
  6. 你现在离开了生产和生产您的webpack配置的开发版本。现在,要编译Angular项目以进行生产,请执行webpack --config webpack.config-prod.js,您也可以将其添加到package.json脚本中以方便使用。

    然而,这可能不是一个完美的方法,但这就是我在做的。如果有更好的版本,请随时编辑。