关于 TreeShaking 这件事情,官方已经强调无数次了,我也在之前的文章中有提到,原因就是 Vue 团队希望能帮助开发者减小 Web 应用的体积。
什么是 TreeShaking
TreeShaking 是一个术语,指的是在打包构建过程中移除没有被引用到的代码,这些代码可以成为 dead code。这个概念最早在基于 ES6 的打包工具 Rollup 中提出,后来被引入到 webpack 中。TreeShaking 比较依赖于 ES6 模块系统的静态结构特性,比如 import
和 export
。
Vue 2.x 的全局 API
举个比较常见的例子,如果你在 Vue 的应用中主动操作过 DOM,大概率会写下:
import Vue from 'vue';
Vue.nextTick(() => {
// 和 DOM 有关的一些操作
});
其实在单个的 Vue 实例中也可以使用这个方法: