tree shaking摇树优化
- 现象:1个模块可能有多个方法,只要其中的某个方法使用到了,则整个文件都会被打包到bundlle里面去。
- 解决:
tree shaking
就是只把用到的方法打入bundle,没用到的方法会在 uglify 阶段被擦除掉- 开启
tree shaking
的要求:必须使用ES6的语法,不支持CJS的语法 - 使用
mode: production
的情况下默认开启
- 开启
- DCE(dead code elimination)
- 代码不会被执行,不可到达
- 代码执行结果不会被用到
- 代码只会影响死变量(只读不写)