Node.js 我在哪里可以找到Angular CLI 7.3.9默认生成的网页包设置文件,以便基于该文件构建覆盖?

Node.js 我在哪里可以找到Angular CLI 7.3.9默认生成的网页包设置文件,以便基于该文件构建覆盖?,node.js,angular,typescript,webpack,ecmascript-6,Node.js,Angular,Typescript,Webpack,Ecmascript 6,我想为Angular CLI v7.3.9生成的项目扩展Web包构建过程 我发现我必须使用这个工具: 这似乎是一个很好的解决方案,但不幸的是,我找不到任何关于扩展现有Angular CLI配置文件的示例 我的意思是-我想先看看Angular CLI已经为我生成了什么,然后再考虑应该在自定义生成器覆盖配置中使用的正确覆盖。由于对webpack有些陌生,我需要了解已经存在的内容,以便能够找出可以调整的内容,以避免完全破坏项目 在哪里可以找到默认生成的网页包设置文件,以便基于该文件构建覆盖? 更具体

我想为Angular CLI v7.3.9生成的项目扩展Web包构建过程

我发现我必须使用这个工具:

这似乎是一个很好的解决方案,但不幸的是,我找不到任何关于扩展现有Angular CLI配置文件的示例

我的意思是-我想先看看Angular CLI已经为我生成了什么,然后再考虑应该在自定义生成器覆盖配置中使用的正确覆盖。由于对webpack有些陌生,我需要了解已经存在的内容,以便能够找出可以调整的内容,以避免完全破坏项目

在哪里可以找到默认生成的网页包设置文件,以便基于该文件构建覆盖?


更具体地说,问题是为生产构建项目大约需要25分钟。这是一个包含数百个表单和网格组件的大型项目,我看到当前的构建过程在ModuleContaineNationPlugin中花费了大约20分钟,在TerserPlugin中花费了5分钟,而没有对计算机资源造成任何严重负载。我听说ModuleCatenationPlugin被弃用了,我想也许我可以用更好的东西来代替(UglifyJS?optimization.concatenateModules?),但首先我必须了解Angular CLI是如何使用它的,这样我才能正确地覆盖它。

从技术上讲,Angular CLI从v5开始(据我所知)您有
ng弹出
,可以访问网页配置。

您可以使用

例如:

  • 添加ngx build plus:
    ng添加ngx build plus

  • 将文件webpack.partial.js添加到(子)项目的根目录中:

  • 在app.component.ts中使用全局变量版本:
  • 使用指向部分网页配置的--extra webpack config开关启动应用程序:
如果您的项目是基于CLI的子项目,请也使用--project开关:

ng serve --project getting-started -o --extra-webpack-config webpack.partial.js

更新您可以查看他们的,这是完整的

不幸的是,他们在v7中禁用了
ng eject
。哦,是的,您是对的,似乎可以在这里找到他们:它类似于
自定义网页包
项目,但问题仍然相同-不知道原始配置,“您不可能清楚要覆盖什么。@JustAMartin请再次检查我的答案
import { Component } from '@angular/core';

declare const VERSION: string;

@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'Version: ' + VERSION;
}
ng serve --extra-webpack-config webpack.partial.js -o
ng serve --project getting-started -o --extra-webpack-config webpack.partial.js