模块打包工具
Posted mcgee0731
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模块打包工具相关的知识,希望对你有一定的参考价值。
模块打包工具
- 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入口
以上是关于模块打包工具的主要内容,如果未能解决你的问题,请参考以下文章