`ESlint` 是提供了一套规则,在你Coding时期(写代码的时候)分析&提示给你代码中的问题,提示你这部分的代码你没有使用到的不必要代码,或者错误的代码。然后提供一些修复方案(有一些可以自动修复有一些不可以)。这是一个编码规范。 `Tree Shaking` 是在Building时期(项目打包编译的时候),分析你的代码代码,把项目中没有使用到的代码从项目摘除看,以减少最后项目编译结果的体积。 主要依赖 `webpack` 之类的打包工具去分析和消除这些无用代码。简单理解就是打包工具通过分析你项目代码中的 `import` 和 `export` 以及后续代码中对于 `import` 进来的内容是否有使用,然后把需要的留下,不需要的抛弃。