Skip to main content

build-tools

打包工具对比

Webpack

官网

webpack功能强大,不止能打包模块,还能做很多rollup无法做到的事情,这也导致webpack的学习成本很高。

  • 通过loader处理各种各样的资源依赖
  • HMR模块热替换
  • 代码按需加载
  • 提取公共模块

rollup

官网

rollup按照单一功能设计原则(功能单一,可继承,可扩展),只做模块化打包功能,除此之外,rollup无法支持其他功能。学习成本极低,容易上手。虽然功能单一,但rollup将模块打包功能做到极致,打包速度非常快,且打包出来的代码将尽可能的压缩。

  1. 配置简单,打包速度快
  2. 自动移除未引用的代码(内置tree shaking)

但是他也有以下不可忽视的缺点:

  1. 开发服务器不能实现模块热更新,调试繁琐
  2. 浏览器环境的代码分割依赖amd
  3. 加载第三方模块比较复杂