rollup真的是非常重要的技能了。
光看官网的介绍的意思就是把很多小的js编译成一个大的。
如果我们写代码,那肯定是分成很多模块这样方便管理,但是打包的话,就是要把很多小块合成一个大块。
把rollup命令全局添加进来
我喜欢用pnpm
创建一个项目 rollup-start
进入项目
在src目录下创建两个文件
main.js foo.js

1
2
3
| // src/main.js
import foo from './foo.js';
export default function () { console.log(foo); }
|
1
2
| // src/foo.js
export default 'hello world!';
|
接下去使用rollup来进行打包
1
2
3
4
5
6
7
8
9
| # cli执行 输出到控制台 -f format cjs(CommonJS)
rollup src/main.js -f cjs
# 输出到文件 用cjs的规范 -o output
rollup src/main.js -o bundle.js -f cjs
# src/main.js → bundle.js...
created bundle.js in 24ms
|
这里,起步指导说是要运行一段nodejs以后去直接执行js才能看到输出hello work
因为之前的代码里面并没有直接console log
所以加一段console log来直接node bundle.js 来看到结果
修改main.js
1
2
3
4
5
| import foo from './foo.js';
export default function main() {
console.log(foo);
}
main()
|
重新cli build
1
2
3
4
5
| rollup src/main.js -o bundle.js -f cjs
# 运行代码
node ./bundle.js
# 输出hello world
|
前端的工具都光cli然后还有大量配置的话肯定是非常不方便的,
所以需要配置文件
Using Config Files
使用rollup 配置文件
1
2
3
4
5
6
7
8
9
| // rollup.config.mjs
// 根目录下创建的配置文件,不是在src下面
export default {
input: 'src/main.js', // 入口
output: { // 出口
file: 'bundle.js',
format: 'cjs' // 打包规范
}
};
|
写了一个配置文件以后
使用新的打包cli
1
2
3
| # -c 使用config 来打包
rollup -c
# 打包成功,和前面一样,所以打包之前可以删除bundle.js 来观察效果
|
这个时候教程提示我们可以试试多环境的打包方式
其实就是使用rollup –config这个cli参数来指定其他的打包文件。
Installing Rollup locally
在项目内配置rollup
假设我们要写一个前端的库,打包很多js到一个js,那么这个库的源代码里肯定是引用了rollup
那么我们在刚刚的那个项目的根目录执行
pnpm init
pnpm add rollup -S -D
安装完成以后是这样,我们加一个script进去,同时删除script自带的test,没啥用。

配置到这里以后可以愉快的使用pnpm run build 这种熟悉的方式来进行打包了!!!快乐来了。
Rollup Tutorial