Vue Firebase:currentUser为null

时间:2018-05-23 06:48:32

标签: firebase firebase-realtime-database vue.js

我是Vue和Firebase的新成员。我使用Firebase查询根据当前用户电子邮件从Firebase数据库中检索某些数据。

这是有效的

source:firebase.database().ref('service').orderByChild('userEmail').equalTo('shakil@gmail.com')

所以在这种情况下,我使用 firebase.auth()。currentUser.email 来使用当前的用户电子邮件

但这不起作用

source:firebase.database().ref('service').orderByChild('userEmail').equalTo(firebase.auth().currentUser.email)

它显示了像这样的错误 - > firebase ___ default.a.auth(...)。currentUser为null

以下是我如何将其用于vuefire

firebase: {
      services: {
        source: firebase.database().ref('service').orderByChild('userEmail').equalTo('marin@gmail.com'),
        readyCallback () {
          this.services.forEach(service => {
            firebase.storage()
              .ref(`service_images/${service.fileName}`)
              .getDownloadURL()
              .then(img => {
                this.$set(this.serviceImages, service['.key'], img)
              })
          })
        }
    }
  },

1 个答案:

答案 0 :(得分:0)

在firebase初始化期间firebase.auth().currentUser为空。 你应该使用

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in.
  } else {
    // No user is signed in.
  }
});

firebase recommendation