将firebase auth实现到vuejs2应用程序中。 现在我需要将用户信息访问到子组件中。
main.js:
var app = new Vue({
router,
created() {
connection.auth().onAuthStateChanged((user) => {
if(user) {
var usersRef = db.ref('users')
var userID = user.uid
usersRef.once('value', function(snapshot) {
if (!snapshot.hasChild(userID)) {
//setting user as new
usersRef.child(userID).set({
isNew: 1 ,
registrationDate: Date.now()
})
}
});
} else {
this.$router.push('/auth')
}
});
} ,
el: '#app',
template: '<app></app>',
components:{
App
} ,
render: h => h(App)
});
现在在子组件中,
当我这样做时:
import Firebase from 'firebase'
console.log(Firebase.auth())
我可以在控制台中看到信息
在这种情况下,我可以看到uid
jc:“wM3ShBwwxRWwpgVwwOx04itcQSH2”
但我无法使用object属性.uid
访问它https://firebase.google.com/docs/reference/js/firebase.User
有任何线索吗?
答案 0 :(得分:1)
如果你需要获取currentUser uid,你应该从firebase.auth().currentUser.uid
获取它。您还需要通过将侦听器设置为firebase.auth().onAuthStateChanged