使用beforeRouteEnter应用重定向不起作用(VueJS)

时间:2018-12-10 17:06:19

标签: javascript vue.js routing vuejs2 vue-router

当用户输入

https://<EXAMPLE>.com/session-expired 

他们浏览器中的网址,我希望将他们重定向到

https://<EXAMPLE>.com/unauthorized

如果他们已登录。

我已经创建了与两条路线关联的组件。基于similar question,我认为使用beforeRouteEnter Webhook将使我能够实现目标。用于检查用户是否已登录的逻辑很简单,并且已经过验证,但是当直接在浏览器中输入URL时,未单击beforeEnterRoute Webhook。

这是我尝试过的路线的代码:

export default function sessionExpiredRoute ({ store }) {
  return {
    path: '/session-expired',
    name: 'session-expired',
    component: SessionExpired,
    meta: {
      requiresAuth: false
    },
    beforeRouteEnter (to, from, next) {
      /* this is not activated when entering the URL */
      if (store.getters['auth/isLoggedIn']) {
        next('/unauthorized')
      }
    }
  }
}

我要使用beforeRouteEnter无法实现的重定向逻辑吗?

0 个答案:

没有答案