vue项目常用优化手段
1、打包优化
- 提取组件的
CSS到单独到文件 - 屏蔽
sourceMap - 开启
gzip压缩 - 公共库使用cdn外链
打包vender时不打包vue、vuex、vue-router、axios等,换用国内的 bootcdn、unpkg 直接引入到根目录的 index.html 中。并把上述文件配置在externals中。
2、源码优化
- template
- 不要在模板里面写过多表达式
v-for增加keyv-show、v-if的使用- 善用
v-once - 图片资源按需加载(
vue-lazyload) - 善于运用事件代理
- script
- 在
created钩子里面请求数据 Promise.all()并发请求- 使用
Object.freeze()来取消Observer观察 - 减少watch的数据,慎用
deep watch - 善用
web Storage(sessionStorage、localStorage)
- 在
- 组件缓存(
keep-alive) - 第三方库按需加载(
不用加载整个库) - 路由组件懒加载
import()
3、用户体验优化
fastclick防止300ms延迟- 菊花loading
- 骨架屏加载
- 首屏直出
- 服务端渲染(
SSR)
4、通用前端优化
这里参考我的另外一篇文章:前端性能优化(最全总结)