多次访问路由器时,多个侦听器将添加到onAuthStateChanged

时间:2016-10-01 14:53:23

标签: vue.js firebase-authentication vue-router

我使用vue,vue-router和firebase来构建我的项目。

有一些路由器逻辑需要用户身份验证

const onAuth = () => {
  return new Promise(() => {
    firebase.auth().onAuthStateChanged((user) => {
      if (user) {
        resolve(true)
      } else {
        resolve(false)
      }
    }
  }
}

router.beforeEach((transition) => {
  if (transition.to.auth) {
    return onAuth()
  } else {
    transition.next()
  }
}

如果路由器需要auth,那么将等待onAuth解决。

但访问路由器需要多次auth,将添加多个新的监听器以进行身份​​验证更改

  • 添加如此多的监听器以进行身份​​验证更改是否可以?
  • 或者还有另一种更好的方法是只添加一个监听器进行授权更改?

0 个答案:

没有答案