1. 背景介绍
前端开发的变化
随着 Node.js 的兴起,越来越多的人使用 JavaScript 开发后台的一些应用。同时促进了模块化开发和包管理生态系统的发展。所以目前在国外,越来越多的人使用 CommonJS 规范来处理模块加载。但是为了能让代码在浏览器上能正常运行,我们需要在上线前,将相互依赖的模块整合打包到一个文件,这样就可以避免 CommonJS 同步加载的缺陷。
Browserify 的热捧
最初在寻找打包工具时,发现大家都选择了 Browserify 这款打包工具。所以一开始我也毫不犹豫地选择了它。后来在使用过程中发现,Browserify 只能将所有文件打包成一个文件,如果需要分开打包,需要手动配置。那这样的打包方式,只适用如下一些场景:
- 小规模网站,即代码量小
- 很少更新网站,意味着业务代码很少更新
- 不太关心第一次页面加载时长
这显然不太适应大部分网站的使用场景。