vue单页面应用使用vue-cli的打包问题

使用vue-cli来搭建vue页面 可以查看搭建和配置

vue单页面应用vue-cli的打包问题

问题1:每个页面按需加载,搭建中访问每个页面都会加载一个js,webpack输出的每个页面的js命名都是以数字命名。

解决方案:修改webpack.prod.conf.js文件

chunkFilename: utils.assetsPath('js/[name].[chunkhash].js')

懒加载路由需要这样

const detail = r => require.ensure([], () =>r(require('@/pages/index/children/detail')), 'detail')

意思是给 chunk 命名,也算是分组,不会生成了no-name的chunk。这样build可以生成detail.js。

问题2:打包生成的每个页面的js文件都包含通用的vue组件和node_modules代码,如下图

《vue单页面应用使用vue-cli的打包问题》

解决方案:使用Code Splitting 减少vue生成的文件大小,webpack.prod.conf文件设置

new webpack.optimize.CommonsChunkPlugin({
      async: 'common',
      minChunks: (module, count) => (
        count >= 2
      ),
    })
    
可以生成一个common文件来放每个组件的通用部分
    原文作者:余木
    原文地址: https://segmentfault.com/a/1190000010447061
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞