为什么 Vue 2 中要注册两次 VueRouter,而 Vue 3 中只需要注册一次?

为什么 Vue 2 中要注册两次 VueRouter,而 Vue 3 中只需要注册一次?

为什么注册两次vuerouter?

Vue 2中,在router文件夹的index.js文件中注册VueRouter是一个必要的步骤。

代码示例:

import Vue from "vue";
import VueRouter from "vue-router";

// 注册VueRouter
Vue.use(VueRouter);

这个use方法是Vue的全局注册方法,用于向Vue实例中注册VueRouter。通过use方法,VueRouter将被注入到所有的Vue组件中。

之后,我们将在main.js中使用该注册的router实例:

立即学习“前端免费学习笔记(深入)”;

import Vue from "vue";
import VueRouter from "vue-router";
import App from "./App.vue";

Vue.use(VueRouter);

const router = new VueRouter({
  routes: [
    // 路由配置
  ],
});

new Vue({
  router,
  render: (h) => h(App),
}).$mount("#app");

Vue 2中,为了使VueRouter正常工作,需要在全局和单个实例中分别注册两次VueRouter。

为什么Vue 3中只需要注册一次?

Vue 3中,注册VueRouter的过程发生了变化。使用createApp方法创建一个Vue实例时,它接受一个configure方法,其中可以注册插件:

import App from "./App.vue";

// 创建Vue实例
const app = createApp(App);

// 注册VueRouter
app.use(createRouter());

// 挂载到DOM
app.mount("#app");

Vue 3中,use方法用于单个Vue实例,这意味着在createApp方法中注册VueRouter一次就足够了。

以上就是为什么 Vue 2 中要注册两次 VueRouter,而 Vue 3 中只需要注册一次?的详细内容,更多请关注其它相关文章!