我目前正着手进行重新设计。这需要更改许多scss并重新加载网站。我想利用使用实时重新加载的ng nerve命令。

有谁知道我如何运行ng serve并缩小vendor.js文件?当我使用ng serve --prod时,它会缩小vendor.js ...,但是构建它需要10-15秒。

目前,我的vendor.js文件未最小化8.9mb,在开发中需要2-3秒重新加载。

有人有想法吗?
ng serve --prod会进行最小化,每次需要2-3分钟。

注意:当前使用Angular 6.X

最佳答案

我观察到使用ng serve和Visual Studio Code重新编译 Angular 项目。对项目进行更改时,不会重新编译Vendor.js。仅在第一次执行ng serve期间进行编译。

如果希望在开发模式下提高编译速度,则可能需要考虑实现延迟加载。如果实现了延迟加载,则无论何时对组件进行更改,都只会重新编译该组件的模块。从长远来看,这可以大大节省编译时间。

在我的第一个Angular项目(一项学校作业)中,这发生在我身上。长话短说,我已经读过关于延迟加载的内容,并将其实现到管理仪表板模块,但是我的 friend 拒绝将其实现到用户模块,因为他不得不四处移动代码并重组项目。随着项目的规模扩大……显而易见,延迟加载有多么重要……

第一次编译:(我会解释一下)manage- *模块是属于admin模块的功能模块。用户模块中的每个组件:侧边栏,导航栏,过滤器,搜索等都属于用户模块,因此,与admin及其功能模块相比,它的体积要大得多,为3.46MB。

javascript - 如何最小化ng serve上的vendor.js-LMLPHP

例如。在用户模块的组件之一中注释3行html会重新编译整个用户模块,耗时5523ms。如果我正在运行photoshop或其他占用大量内存的程序,则需要更长的时间!

javascript - 如何最小化ng serve上的vendor.js-LMLPHP

例如。注释3行html并在管理仪表板模块中重新编译功能模块需要不到1秒的时间:

javascript - 如何最小化ng serve上的vendor.js-LMLPHP

我对Angular还是很陌生,但经验教训:进行延迟加载,它确实节省了用户的带宽和您的开发时间=]

10-07 23:11