【发布时间】:2017-07-24 21:51:08
【问题描述】:
这是交易。 我正在使用 VueFire,并想从我设置的 Firebase 数据库中检索数据。在那里我有一个用户节点,每个节点都由一个唯一的 ID 定义。此外,对于每个用户,我都有一个数组,里面装满了他们要购买的物品。为了使其动态化,我在 firebase 钩子中调用引用,如下所示:
export default {
firebase:{
cart: app.database().ref('users')
}, //and so on and so on
}
我想检索当前用户,而不是.ref('users'),使用他的唯一ID,如下所示:.ref('users/' + user.uid + '/cart')
要获取当前用户 uid,我会使用 firebase.auth().onAuthStataChanged(user=>{//code here}) 的观察者
问题是,由于这是异步的,firebase 挂钩在当前用户被检索之前激活。我尝试简单地调用firebase.auth().currentUser,但这也很慢且使用不可靠。
我愿意接受任何形式的建议!
【问题讨论】:
-
您需要将其连接起来,以便在
onAuthStateChanged触发之后异步绑定引用。您必须等待它触发才能准确了解用户 ID 以及用户是否已登录。 -
我遇到了同样的问题,我正在使用
firebase.auth().currentUser这样做:users: this.$root.db.ref('users/' + firebase.auth().currentUser.uid)我尝试在created()上检查uid并设置它,然后使用@987654331 @ 而不是firebase.auth().currentUser.uid但这不起作用。如果有的话,我也在寻找更好的解决方案。
标签: node.js firebase firebase-realtime-database firebase-authentication vuejs2