rollup是 javaScript 的模块化打包工具。将小块代码编译成大块浮渣的代码。资源合并,tree-skaeing剔除未使用代碼。主要应用于构建js库。
基本的属性
- 通过配置rollup.config文件配置相关打包属性,导出一个对象数组,实现不同模块方案打包(umd cmd common es)
- 对象配置
input 入口
output 出口对象 配置出口名称 format模块类型
-
plugins 相关插件
rollup-plugin-node-resolve 外部模块的查找,合并外部模块代码 rollup-plugin-commonjs commonjs模块转化为es5 rollup-plugin-babel es6转化为es5 rollup-plugin-terser 代码体积压缩 rollup-plugin-typescript typescript转化为es5 rollup-plugin-postcss 处理样式文件less、css rollup-plugin-replace 动态替换代码中的内容 还有如 模块别名插件(rollup-plugin-alias),去除flow静态类型检查代码(rollup-plugin-flow-no-whitespace) eslint检测插件等等
external 外部依赖,不需要打包
globals 全局代理
注意:对于样式文件需要额外使用 autoprefixer cssnano 来提取样式文件(sass 或者 less 等)添加浏览器前缀 以及压缩