使用vue-router 3.0.6
我有几个登陆页面,它们的URL通过API加载到页面上。
我等待呈现<router-view />
,直到这个API调用解决为止。
当它解决后,我运行this.$router.addRoutes(routes)
然而,一旦路由器视图是呈现,我得到一个404路由呈现.
如果我导航到主页,并点击一个链接到动态登陆页面,我最初是试图访问加载,它工作良好的。
是否有什么功能可以让vue-路由器重新评估它的可用路由,这可能发生在路由更改到主页,允许下一个导航到动态页面工作?
第一次加载-> /动态路由= 404
第一次加载-> /动态路由-> 404 ->主页-> /动态路由= OK
发布于 2022-08-12 12:40:29
老问题,但是如果有人被困在这上面,您需要在调用Vue 2中的Vue.use(路由器)或在Vue 3中调用app.use(路由器)之前执行设置路由的操作。
这是因为安装路由器插件会立即触发与初始路径匹配的操作。因为您希望它检测的路由在当时没有注册,所以会被错过。
如果基于标志变量显示/隐藏路由器视图组件并不重要,因为路径匹配操作到那时已经完成。
发布于 2019-07-18 10:36:54
当您直接匹配/dynamic-route
时,可能addRoutes没有工作。所以它会计算404。当您更改路由时,可以使用addRoutes函数使beforeEach
功能工作。
https://stackoverflow.com/questions/57089133
复制相似问题