我目前正在实现一个 javascript 函数来判断用户 ID 和名称是否匹配。
function name_match(user_id, user_realname) {
var dbref = firebase.database().ref();
var namesref = dbref.child("names");
namesref.on("value", function(snapshot) {
snapshot.forEach(i => {
if(i.key == user_id && i.child("realname").val() == user_realname) {
return true;
}
});
});
return false;
}
但是,无论输入如何,它最初都会返回 false。我认为这是因为它会在加载 firebase 数据时“返回 false”。
所以,即使最终返回true,由于第一次返回值为false,它会导致这样的问题(在另一个函数中)。
function name_match2() {
var user_id = document.getElementById("user-id").value;
var user_realname = document.getElementById("user-realname").value;
if(!name_match(user_id, user_realname)) return -1;
return 0;
}
它会返回-1。
你能解释一下如何解决这个问题吗?
MM们
相关分类