gpt4 book ai didi

javascript - Firebase - myFirebase.child().once() 返回未定义

转载 作者:行者123 更新时间:2023-11-30 10:15:40 25 4
gpt4 key购买 nike


我正在使用 Firebase 创建一个网络应用程序。我可以在我的 Firebase 中设置值,但如果我尝试读取它们,我会得到未定义的。这是我的代码:

            var str = document.URL;
var padId = str.slice(55, 65);
alert(padId);
var myFirebase = new Firebase("https://collab-coding-privacy.firebaseio.com/" + padId);

var isPrivate;
var owner = "";
var pemial = "";

myFirebase.child("private").on('value', function(snapshot) {
if (snapshot.val() != undefined) {
isPrivate = true;
}
});
alert(isPrivate);

myFirebase.child("pemial").on('value', function(snapshot) {
if (snapshot.val() != null) {
pemail = snapshot.val();
}
});
alert(pemail);


myFirebase.child("owner").on('value', function(snapshot) {
if (snapshot.val() != null) {
owner = snapshot.val();
}
});
alert(owner);

当我加载页面时,它首先提醒 padId,我检查并存在于我的 firebase 中。然后它提醒 pemail、owner 和 isPrivate,这些都是未定义的。

我做错了什么?有什么建议么?先谢谢大家。

最佳答案

您正在执行异步操作,然后立即尝试在同步范围内读取返回值。该值未定义,因为尚未调用 on('value') 的回调。将警报移到回调中,您将看到实际值。

关于javascript - Firebase - myFirebase.child().once() 返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23873157/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com