为什么在router文件夹下的index.js文件里面,一开始的时候需要注册VueRouter?
为什么在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个回答

test
2024-06-21
怎么感觉你是把 Vue2 跟 Vue3 的两处 use
的写法给混在一起了呢……
Vue2 里:
Vue.use(VueRouter); // 全局的 use
const router = new VueRouter();
new Vue({ router });
Vue3 里:
const router = createRouter();
createApp().use(router); // 实例的 use
都是只有一次 use
,为啥会有两次?
P.S. 2 里的 use
是全局的,所有 Vue 实例都注入了 VueRouter(但它们可以使用不同的配置项);3 里 use
是单个实例的,每个 Vue 实例可以自己决定是否注入 VueRouter。
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容