首页 > webpack打包生成一个文件main.js会不会越来越大?

webpack打包生成一个文件main.js会不会越来越大?

做一个单页面应用,用webpack打包html,css,js生成main.js,会不会超过几千KB,怎么处理这个问题?


可以分类打包成多个文件:

entry: {
  app: ['./app/main.js', '.lib/index.js'],
  vendors: ['./app/vendor.js']
}

output: {
  path: staticPath,
  filename: '[name].js'
}

如果文件实在太大,考虑lazy load


会的,最终的文件会很大,拆分出公共库,压缩文件,同时开启服务器gzip


能量守恒,代码也守恒,用webpack打包的大,不用webpack一样大,只要你是一次全加载的。

解决方式只有两个

1, 砍需求,砍功能,砍代码。
2, 各模块异步require,异步加载,这样只访问一个模块时,不用加载其他模块代码。


建议公共模块打包成一个文件,然后每个模块打包各自的业务代码。这样可以连接数和文件体积上取得一个平衡


会越来越大,所以可以配合前端AMD/require一起用,在webpack里忽略到一些公用模块,在浏览器端用require引入项目,这样可以做到不同页面获取不同的模块资源。

还有公用库注意不要打到main.js里,单独拿出来处理,在layout里引入。webpack里可以通过一个CommonsChunkPlugin来设置一个模块使用多少次,统一打到一个commons.js里。

【热门文章】
【热门文章】