最近做项目,随着需求迭代项目越做越大,发现每次打包的时候特别慢,打包出来的dist文件几十M,然后首次加载也很缓慢。下面是一些优化的方法,如有不足,欢迎补充!
1. 去掉编译文件中map文件
在编译好后,我们会看到文件夹下有特别多的.map文件,这些文件主要是帮助我们线上调试代码,查看样式。所以为了避免部署包过大,通常都不生成这些文件。
2. 路由懒加载
一般项目优化通常都会使用路由懒加载,减少第一次加载的时候耗时。
常见的有几种方式:
1. vue异步组件
2. import()
3. 使用CDN加载
在打包后发现vendor.js 文件占用内存特别大,这里面主要是使用的一些第三方库,例如 vuex,vue-router,axios,elementUI 等文件,像使用elementUI的时候可以需要什么组件就引入什么组件,按需引入。在index.html 中还可以使用CDN 加载,直接引入第三方资源,减轻服务器压力。
然后,修改webpack.base.conf.js中修改配置,给module.exports添加externals属性。
需要将原来的引用注释,才能生效
// import Vue from "vue"
// import Element from "element-ui"
4. 去除控制台打印信息
打包后需要过滤掉代码中的console.log 和debugger,防止打开f12 的时候输出日志,如何配置可参考此篇文章,juejin.cn/post/686299…