vue.js - 根据在 Vue 实例上设置的值重定向

vue.js - Redirect depending on a value set on the Vue instance

我正在尝试根据是否在 Vue 实例上设置值来重定向用户。目前,我正在使用这样的 Global Route Navigation Guard

这不是一个有效的例子

router.beforeEach((to, from, next) => {
  next(vm => {
    if (!vm.value) {
      vm.value = 123
      return {path: '/url'}
    }
  })
})

我是否需要在 if 语句中调用 next('/url')?或者有没有更好的方法来有条件地重定向。

提前致谢。

您可以使用 router.app 访问根 Vue 实例,如 here

所述
router.beforeEach((to, from, next) => {
    if(!router.app.value){
        router.app.value = 123
        next('/url')
        return
    }

    next()
})