默认情况下,通过import导入的第三方依赖包,最终会被打包到同一个文件中,导致打包后文件体积过大的,可以配置打包策略,不对第三方组件进行打包,而是通过CDN方式引入第三方资源
通过webpack的externals节点,配置并加载外部的CDN资源,凡是声明在externals中的第三方依赖包,都不会被打包,这样会显著降低打包后js文件的大小
修改vue.config.js文件,添加打包时排除项,格式为包名:导入的名称
module.exports={// 如果打包文件资源路径没有distpublicPath: '',chainWebpack:config =>{// 生产环境config.when(process.env.NODE_ENV === 'production', config => {config.entry('app').clear().add('./src/main-prod.js')// 打包时排除以下第三方依赖包config.set('externals', {vue: 'Vue','vue-router': 'VueRouter',axios: 'axios',lodash: '_',echarts: 'echarts',nprogress: 'NProgress','mavon-editor': 'MavonEditor',})})// 开发环境config.when(process.env.NODE_ENV === 'development', config => {config.entry('app').clear().add('./src/main-dev.js')})}}
注释所有main-prod.js的所有css引入文件
- 编辑public下的index.html文件,将css资源和js资源通过cdn引入
<!--icon图标样式--><link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/5.15.2/css/all.min.css" /><!--nprogress样式--><link rel="stylesheet" href="https://cdn.staticfile.org/nprogress/0.2.0/nprogress.min.css" /><!--vue.js--><script src="https://cdn.staticfile.org/vue/2.6.11/vue.min.js"></script>……
- cdn加速网站
