Rollup
简介
Rollup 是一个用于 JavaScript 的模块打包工具,它将小的代码片段编译成更大、更复杂的代码,例如库或应用程序。它使用 JavaScript 的 ES6 版本中包含的新标准化代码模块格式,而不是以前的 CommonJS 和 AMD 等特殊解决方案。ES 模块允许你自由无缝地组合你最喜欢的库中最有用的个别函数。
特点
- ES6 模块支持:原生支持 ES6 模块语法,可以进行高效的 tree-shaking(摇树优化),移除未使用的代码。
- 多种输出格式:支持输出多种模块格式,如 IIFE、AMD、CommonJS、UMD 和 ES 模块。
- 插件系统:拥有丰富的插件生态系统,可以通过插件扩展功能。
- 小巧精悍:生成的代码体积小,性能高。
- 开发友好:提供源映射(source maps)支持,便于调试。
相关历史
Rollup 由 Rich Harris 开发,最初发布于 2015 年。它诞生的初衷是为了更好地支持 ES6 模块标准,并提供比当时现有工具更高效的打包方式。随着时间的发展,Rollup 成为了许多知名开源项目(如 React、Vue 等)构建工具链的重要组成部分。