Vue3 全局 API 的修改

官方文档

全局 API | Vue3中文文档

观察 main.ts

可以看到,vue3 的入口文件变得简洁了很多,只有短短三行代码了。

import { createApp } from "vue";
import App from "./App.vue";

createApp(App).mount("#app");

vue2 中的全局对象是 Vue (),可以对它进行一系列的配置,比如说修改 Vue.prototypeVue.use()等等。这些操作是直接修改 Vue 对象的,这导致了一些问题:

  • 在单元测试中,全局配置非常容易污染全局环境,插件在测试中变得非常困难。
  • 在不同的 apps 中,共享一份有不同配置的 Vue 对象,非常困难。

所以 vue3 用 createApp 来解决上述问题。vue3 将全局对象修改为 app 实例了。所有原来对全局对象的操作,也移动到 app 实例上。

Vue3 打包后体积变小,也有全局 API 的功劳

全局 API 在 vue3 中都改为 Name exports 具名的导出。就等于支持了 WebpackTreeshaking

你可能感兴趣的:(Vue3 全局 API 的修改)