vue.js - 如果找不到 404,Vue 重定向回“/”
问题描述
我有一个具有以下路线的 Vue 应用程序:
export default new Router({
mode: 'history',
routes: [
{
path: '/',
name: 'input',
component: Input
},
{
path: '/result/:city',
name: 'result',
component: Result
}
]
})
我知道如果我用path: '*'
and做一个新路径component: someErrorPage
,我可以显示一个错误页面。但是,我想重定向回输入路径,以便他们可以重试。
编辑:
在做了一些研究并查看了我的应用程序后,我发现如果我搜索无效查询,无论如何它都会带我到相应的路线,但不会显示数据。示例:如果我搜索一个有效的城市(例如纽约),我会被重定向到localhost:8080/result/New York
正确的数据。但是,如果我执行有效查询(例如 a;fldkalf),我将被带到localhost:8080/result/a;fldkalf
没有任何数据的地方。这意味着这path: '*'
对我没有帮助。
编辑 2:我想我可能已经找到了一些有用的东西,但我不确定如何执行它。Vue 有一个叫做导航守卫的东西(https://router.vuejs.org/guide/advanced/navigation-guards.html#global-before-guards)。如果有人可以帮助我理解它,那就太好了。
解决方案
*
您可以为(未找到)路由添加重定向:
{
path: '*', // make sure this is the last route in Array
redirect: { name: 'input' },
}
推荐阅读
- php - 按状态排列的颜色表
- ffmpeg - 在单个命令中缩放和覆盖
- javascript - 在 JavaScript 类中使用箭头函数的继承和多态
- mpi - MPI 程序执行错误 - 未找到活动端口
- java - Camera 2 Api Error - 不拍照的错误
- python - 如何询问用户是否希望代码重新开始
- java - Codename One 中用于验证 url 的 URL 模式匹配
- appium - Android UiAutomation 未连接!Appium 1.17.1-1
- java - 正则表达式 java 屏蔽
- memory-management - /proc/[pid]/status:RssAnon 和 /proc/[pid]/smaps_rollup:Anonymous 之间存在差异的原因是什么?