tree shaking主要作用是打包项目时会将不用到的方法不打包入项目中,这样得以优化项目体积。
主要原理:
利用ES6模块的特点:
只能作为模块顶层的语句出现
import 的模块名只能是字符串常量
import binding 是 immutable的
代码擦除:uglify阶段删除无用代码
使用方法很简单,webpack配置中的wbpack.prod.js中只需要设置
mode: 'production',
就可以了,该模式下tree shaking是默认开启