包体积优化分享
结论:优化前 包体积:6.57MB ----> 优化后 包体积: 3.83MB 下降 58.3%
1.通过 rollup-plugin-visualizer 进行分析包模块体积大的原因: 三方库,JS,CSS资源,图片,JSON文件等静态资源
2.针对三方插件占用体积比例很大- 改用CDN引入(SPA场景)
CDN引入的场景不适用于SSR渲染的项目,适用于SPA项目-我们这个就是
SSR场景:博客,电商产品页,Nuxt,Next,需等待 Hydration 完成
SPA:React、Vue,(基于 CSR 模式)
3.处理业务逻辑,把Markdown的实例化 和 转换数学公式 可以抽取出来,形成公共工具,这样不需要每次对话都创建新实例
4.按需引入UI库,由于我们的UI库没有CDN存放版本,只能使用按需引入的方案
5.viteCompression 开启br压缩 和 gzip 压缩,这里难点不是前端的插件配置,而是配合nginx配置 和后端配置