前端模块化开发-Rollup(笔记)

前端模块化开发-Rollup(笔记)

Rollup

Rollup与Webpack类似,都是前端打包工具,但是其更小巧,仅仅是一款ESModules打包器,没有WP那么功能强大。
Rollup打包结果非常简洁,就是把我们的各个模块儿的代码,按导入顺序放入一个js中,并且自动Tree Shaking去除冗余代码。

rollup.config.js

// rollup.config.js
// 使用ESM规范导入
import json from 'rollup-plugin-json' // json模块
import resolve from 'rollup-plugin-node-resolve' // 加载NPM模块
import commonjs from 'rollup-plugin-commonjs' // 兼容CommonJS规范的模块
export default {
  input: 'src/index.js',
  output: {
    file: 'dist/bundle.js',
    format: 'iife' //制定输出格式 iife自执行函数
  },
  plugins: [ //插件的使用,传入函数调动的结果
    json(),
    resolve(),
    commonjs()
  ]
}

Rullup的优劣势
优点:

  • 输出结果更加扁平,执行效率更高;
  • 自动移除未引用代码,Tree Shaking;
  • 打包结构依然简单,完全可读;

劣势:

  • 加载非ESModules的第三方模块比较复杂;
  • 模块最终都被打包到一个函数中,无法实现HMR;
  • 浏览器环境中,代码拆分功能依赖AMD库;

当开发一个框架或者类库时,大多使用Rullup,大多数知名的框架/库中都使用Rollup像React和Vue。
选择是,开发应用程序使用Webpack,库/框架开发使用Rullup。经验之选

Parcel

使用非常简单,完全零配置,启动一个parcel命令后,便可编写代码。

  • 会自动安装依赖;
  • 会自动启动开发服务,实现HMR;
  • 并且构建速度更快,多进程同时工作;

2017年发布,属于新技术,技术走向越来越简约。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值