【发布时间】:2021-06-05 07:01:05
【问题描述】:
我将路由动态添加到路由器,我可以使用路由器视图访问所有页面。但是,当我尝试刷新页面时,尽管 URL 相同,但我无法再次访问该页面。是http://localhost:8081/me。
this.$router.addRoute("Main", {
path: '/me',
name: 'Me',
component: () => import(`@/components/Me.vue`)
});
正如我所说,我可以正常访问“我”页面,但是当我刷新它时,我再也看不到它的内容并出现警告:
[Vue 路由器警告]:找不到路径“/me”的位置的匹配项
在阅读the cause of the error 后,我尝试使用createWebHistory("/") 创建路由器,但似乎没有任何改变。我将不胜感激。
【问题讨论】:
-
在哪里添加路由?
-
理想情况下,路由器创建和路由声明是一次性引导活动。您不需要使用
addRoute方法,除非在极少数情况下。这可能是当您刷新这段特定代码时未执行导致 No Match 错误的原因。初始化路由器时预先声明所有路由。 -
@shob 我在 router/index.js 中创建了路由器,但我在 components/common/LeftMenu.vue 中添加了新路由器。
-
@HarshalPatil 我在初始化路由器时声明了路由,但我还想添加新路由。那么你认为我不能使用另一个组件来添加更多路线吗?但我想动态添加新路线。
标签: vue.js vue-router vuejs3