为什么在 router 文件夹下的 index.js 文件里面,一开始的时候需要注册VueRouter?

Viewed 11

为什么在router文件夹下的index.js文件里面,一开始的时候需要注册VueRouter?

import Vue from "vue";
import VueRouter from "vue-router";
// 为什么需要在这里注册一次VueRouter?
Vue.use(VueRouter);

最后不是会把 router 实例对象 export 出去然后在 main.js 里面 Vue.use(router) 吗?

为什么要注册两次?

1 Answers

在router文件夹下的index.js文件中,一开始的时候需要注册VueRouter,是为了确保VueRouter能够被正确地使用和实例化。

VueRouter是Vue.js的官方路由管理器,用于构建单页面应用。在Vue应用中使用路由,需要先安装并注册VueRouter。在index.js文件中,通过import语句导入VueRouter,并使用Vue.use(VueRouter)来注册VueRouter插件。

注册VueRouter的目的是为了在Vue应用中全局地启用路由功能。通过注册VueRouter,你可以在应用中使用this.$router来访问路由实例,并在组件中定义路由组件、路由参数、路由守卫等。

而在main.js文件中再次使用Vue.use(router),是为了将自定义的router实例挂载到Vue应用上。这是因为在创建router实例时,可能需要一些额外的配置选项,如添加路由守卫、定义路由参数等。将这些配置应用到router实例上后,再将该实例挂载到Vue应用上,以便在整个应用中访问和使用路由功能。

因此,虽然看起来像是在两个地方都注册了VueRouter,但实际上它们的作用是不同的。在index.js文件中注册VueRouter是为了启用路由功能,而在main.js文件中再次使用Vue.use(router)是为了挂载自定义的router实例。