代码层面的优化
- v-show、v-if区分使用场景
- watch、computed区分使用场景
- 三方插件按需引入
- 使用defineAsyncComponent引入需要异步加载的组件。异步组件的代码是分开打包的,能形成“分包”机制,缩短项目的首次加载时间
- 图片、路由的懒加载
- 事件的销毁
- 服务端渲染SSR或者预渲染
- 提取公共代码(js方法、css样式、封装组件等)
webpack层面的优化
- 模板预编译以及Vue项目的编译优化
- 优化SourceMap(去掉.map文件,减小打包体积。配置productionSourceMap:false)
- 压缩js、css文件、图片等(compression-webpack-plugin)
- 限制chunkjs文件的数量(LimitChunkCountPlugin)
- 构建结果输出分析
基础的web技术的优化
- 开启gzip压缩
- 在html文件中通过CDN引入相关js文件和css文件
- 使用Chrome Performance
- 浏览器缓存