Проверка подлинности Nuxtjs, VUEX и Firebase при перезагрузке страницы - PullRequest
0 голосов
/ 10 октября 2018

Я использую проверку подлинности Firebase в своем приложении Nuxt, но не могу найти хороший способ сохранить состояние входа пользователя в мой Магазин.

Я регистрирую пользователей, отправляя асинхронное действие в моем магазине.когда пользователь обновляет браузер (перезагружает его), пользователь выходит из моего приложения, но остается в Firebase (так как он не вышел).Это проблема, потому что пользователю придется снова войти в мое приложение, чтобы просмотреть ограниченные страницы и выполнить определенные действия.

Я пытался получить пользователя в NuxtServerInit (из магазина index.js, поскольку я использую режим модулей) из:

firebase.auth().currentUser

Но он возвращает ноль, и я также пыталсяпрослушать:

firebase.auth().onAuthStateChanged((user)

Но он также возвращает ноль

Я также пытался создать промежуточное программное обеспечение, чтобы проверить, вошел ли пользователь в систему в данный момент, но оно также возвращает ноль.

В предыдущем проекте Vue я мог сделать это в файле созданного хука в файле main.js следующим образом:

new Vue({
  router,
  store,
  render: h => h(App),
  created () {
    firebase.auth().onAuthStateChanged((user) => {
      if (user) {
        store.dispatch('autoSignIn', user)
      }
    })
  }
}).$mount('#app')

Но я не могу понять, каксделайте то же самое в моем приложении Nuxt.

Я ценю любые идеи о том, как решить эту проблему, чтобы мои пользователи оставались в системе.

...