模块打包工具
- ESM 存在环境兼容问题
- 模块文件过多,网络申请频繁
- 所有前端资源都须要模块化,不仅js文件
毋庸置疑前端模块打包工具是必要的
支流工具 Webpack Parcel Rollup
WebPack
webpack入口
Rollup
长处
- 输入后果更加扁平
- 主动移除未援用代码
- 打包后果仍然齐全可读
毛病
- 加载非 ESM 的第三方模块比较复杂
- 模块最终被打包到一个函数中,无奈实现 HMR
- 浏览器环境中,代码拆分性能依赖 AMD 库
如果咱们正在开发应用程序,须要大量引入第三方模块,利用过大还要分包
如果咱们开发一个框架或者类库,很少依赖第三方模块,大多数出名框架/库都在应用Rollup作为模块打包
总结:Webpack大而全,Rollup小而美,应用程序用webpack,库/框架Rollup
Rollup入口
Parcel
Parcel公布于2017年,过后Webpack应用上过于繁琐,齐全零配置,构建速度快
vs.Webpack
- Webpack生态更好,扩大更丰盛
- Webpack越来越好用
Parcel入口