vue项目性能优化--可以从四个方面阐述:
- 编码阶段
- SEO优化
- 打包优化
- 用户体验
1、编码阶段
- 尽量减少data中的数据,data中的数据都会增加getter和setter,会收集对应的watcher
v-if
和v-for
不能连用- 如果需要使用v-for给每项元素绑定事件时使用
事件代理
- SPA 页面采用
keep-alive
缓存组件 - 在更多的情况下,使用
v-if替代v-show
- key保证唯一
- 使用
路由懒加载
、异步组件 防抖、节流
- 第三方模块按需导入
- 长列表滚动到可视区域动态加载
- 图片懒加载
2、SEO优化
- 预渲染
- 服务端渲染
SSR
(node、renderer)
3、打包优化
- 压缩代码
- 摇树优化
Tree Shaking
、作用域提升Scope Hoisting
- 使用cdn加载第三方模块
DllPlugin
- 多线程打包
thread-loader/happypack
- 多进程并行压缩代码
terser-webpack-plugin
- splitChunks 抽离公共文件
sourceMap
优化- cache缓存: babel缓存、teser缓存、模块缓存 hard-source
4、用户体验
- 骨架屏
- PWA(渐进式web应用)
- 还可以使用缓存(客户端缓存、服务端缓存)优化、服务端开启gzip压缩等。
微信公众号: 情非得已小猿猿(FrontendApe)