webpack是什么?答案:构建工具、打包器、bundler。
不要被它的一切皆模块给迷惑了,首先要知道它是一个打包器。一切皆模块只是它作为打包器的一种打包思路
webpack的作用:
- 打包任何静态资源
- 转义es6语法
- 转换yaml文件成json
- 缓存文件
- 分割代码
- 动态引入代码
- 加载coffescript
- 处理css
- 转换url
- 导出html成字符串
- 加载gzip资源
- 处理不同扩展名的json文件
- 多进程实例构建
- 多进程并行压缩代码
- 初级分析
- 速度分析
- 体积分析
- 图片压缩
- tree shaking基于DCE原理擦除无效代码
- 基于生产、开发、测试环境配置不同的source-map
- 热更新
- 增加eslint规范
- 持续集成
- 冒烟测试
- 单元测试
- 压缩代码
- 发布到npm
- 输出测试覆盖率