Vue路由器重定向到父级中的相同路径

时间:2019-04-11 13:38:01

标签: vue.js vue-router

是否有一种方法可以重定向以/ web / *开头的所有URL,而不使用 web 重定向到相同的URL?

所以这样的网址:

https://example.com/web/page

将重定向到:

https://example.com/page

使用Vue路由器,但未分别声明每个重定向?

我知道我可以这样做:

const router = new VueRouter({
    routes: [
        { path: '/web/page', redirect: '/page' }
    ]
})

但是有没有一种方法可以将所有以网络开头的内容捕获到没有网络的情况下?

1 个答案:

答案 0 :(得分:1)

我想出了一种方法。 在beforeEach中,可以检查然后纠正路径。

router.beforeEach((to, from, next) => {
    if (to.path.startsWith('/web')) {
        next(to.path.replace('/web', ''))
    }
    ...
})