【发布时间】:2016-06-09 05:34:50
【问题描述】:
我是 Firebase 的新手,我正在尝试弄清楚如何从我的 Firebase 数据库中检索数据。我能够根据用户的唯一 ID (uid) 成功添加到它,但现在从中获取数据似乎非常困难。我想从当前用户(以下代码中的“用户”)中获取名字,但这个 JavaScript 似乎不起作用:
var uid = user.uid
firebase.database().ref('users/' + uid).on('value', function(snapshot) {
this.first_name = snapshot.val().first_name;
});
我一拨打this.first_name,就会出现以下错误:
FIREBASE 警告:用户回调引发了异常。 TypeError:无法将属性“first_name”设置为 null。
如果有帮助,我的数据库结构如下:
{
users: {
"uid1": {
first_name: "John"
},
"uid2": {
first_name: "Sue"
}
}
}
【问题讨论】:
-
您为
this.first_name赋值。你期望this是什么?由于您处于回调链的中间,this上下文可能是多种事物(包括null)。
标签: javascript firebase firebase-realtime-database