1. 先初始化一个项目
yarn init -y
2. 安装rollup
yarn add rollup -D
3. 新建一个src存放组件内容,新建一个dist作为打包后的文件夹
1. 在src中建一个components文件夹
class Button {
constructor(children) {
this.children = children;
}
print() {
console.log(this.children)
}
}
export default Button;
import Button from './components/button'
const button = new Button('button')
button.print()
4. 在根目录下新建一个rollup.config.js
// rollup.config.js
export default {
// 核心选项
input: './src/index.js', // 入口
output: { // 出口 (如果要输出多个,可以是一个数组)
file: './dist/bundle.js', //出口文件
format: 'cjs', // 生成包的格式
},
};
5. 在package.json最后添加scripts
"scripts": {
"dev": "rollup -c -w",// -c 是使用配置文件,-w是监听变化
"build": "rollup -c"
}
6. 不安装bablel时,运行yarn build,查看dist下的bundle.js ,仍然是es6格式,得到的是class,没有生成es5格式
7. 安装babel
yarn add -D @rollup/plugin-babel @babel/core @babel/preset-env
8. 打开rollup.config.js,配置plugin
import babel from "@rollup/plugin-babel";
import babel from "@rollup/plugin-babel";
// rollup.config.js
export default {
// 核心选项
input: './src/index.js', // 必须
plugins: [
babel({
exclude: 'node_modules/**' // 只编译我们的源代码
})
],
output: { // 必须 (如果要输出多个,可以是一个数组)
// 核心选项
file: './dist/bundle.js', // 必须
format: 'cjs', // 必须
},
};
9. 在src下建立 .babelrc
{
"presets": [
"@babel/preset-env"
]
}
10. 执行yarn build,查看dist下的bundle.js ,已经将es6转换为es5格式
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。