webpack打包文件过大优化

发布于 2022-09-05 03:57:31 字数 580 浏览 20 评论 0

我是用vue开发单页面的,做了按需记载,现在有a、b、c、3个页面里面的组件都引用了echarts库,3个文件打包出来都有300k左右的大小,是不是每个页面都把echarts单独打包进去了,有没有办法分离优化一下,这3个页面引用1个echarts,
我已经把vue和vue-router单独出去了,但是这个是必加载的,我用的这个echarts是在进入某个页面才需要下载。
下面是我的代码

module.exports = {
  entry: {
    main:'./src/main.js',
    vendor: ["vue",'vue-router']
  },
  output: {
    path: '',
    publicPath:'',
    chunkFilename:'js/[name].[chunkhash:5].chunk.js',
    filename: 'js/[name].js'
  },
  plugins:[
    new webpack.optimize.CommonsChunkPlugin({ name: 'vendor', filename: 'js/vendor.bundle.js' 
    }),
  ]
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

溇涏 2022-09-12 03:57:31

可以看下这篇文章https://segmentfault.com/a/11...,使用CommonsChunkPlugin来抽出来,或者https://segmentfault.com/a/11...这篇文章,使用dllPlugin来抽离

子栖 2022-09-12 03:57:31

把 echarts 、vue 公共库放在 vendors 里面,设置多入口。

玻璃人 2022-09-12 03:57:31

把 Vue 打到 venders 或者设置 webpack 的 externals 来直接引用 cdn 上的 Vue,然后用 import('echarts') 来异步加载 echarts(会单独打包),或者也用 externals。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文