当我们项目完成后,build后发现文件会比较大,部署到服务器上首页加载还比较慢,这都是打包资源太多的问题,照成文件比较大,加载比较慢,这个时候我们就可以使用CDN资源优化项目了
build后会打印出日志,会发现这个js文件很大,我当时的是1.6m。
废话不多说,优化如下
1.在vue.config.js 添加如下配置
// chainWebpack: config => {
// //发布模式
// config.when(process.env.NODE_ENV === 'production', config => {
// //entry找到默认的打包入口,调用clear则是删除默认的打包入口,add添加新的打包入口
// config.entry('app').clear().add('./src/main-prod.js')
// config.set('externals', {
// // vue: 'Vue',
// axios: 'axios',
// 'vue-router': 'VueRouter',
// // 'element-ui': 'ELEMENT',
// 'echarts': 'echarts',
// })
// })
// //开发模式
// config.when(process.env.NODE_ENV === 'development', config => {
// config.entry('app').clear().add('./src/main-dev.js')
// })
// },
configureWebpack: {
externals: {
'vue': 'Vue', //前面是我们引入的名字,后面是包名
'axios': 'axios',
'element-ui': 'ELEMENT',
'echarts': 'echarts',
}
}
我当时是配置了开发模式和发布模式,使用cdn资源是想放在发布后,后来还是删了!!
2.在public目录下的index.html中引入CDN资源
<head>
<link rel="stylesheet" href="https://unpkg.com/element-ui@2.13.2/lib/theme-chalk/index.css">
</head>
<body>
//注意: script不要放在head里面,引入的顺序根据依赖,别把vue放在依赖他的下面这样也会报错的
<script src="//cdn.bootcss.com/vue/2.6.11/vue.min.js"></script>
<script src="//cdn.bootcss.com/element-ui/2.13.2/index.js"></script>
<script src="https://cdn.staticfile.org/axios/0.19.2/axios.min.js"></script>
<script src="https://cdn.staticfile.org/echarts/4.8.0/echarts.min.js"></script>
</body>
CDN资源:BootCDN - Bootstrap 中文网开源项目免费 CDN 加速服务
需要就去上面找
3.npm run build
上面这些配置完成后,就可以执行npm run build了 可以清楚的看到js的大小从1.6m到200k,效果还是非常明显的。