javascript - 当 Firebase 数据不是 "undefined"时

标签 javascript firebase firebase-realtime-database

我正在尝试从我的 Firebase 数据库检索一些数据,但我得到的值是“未定义”。

这是我将数据保存到数据库的方式:

var database = firebase.database();

        database.ref().push({
        mainArray: mainArray,
        secondArray: secondArray,
        listname: listName,
        mainLanguage: mainLanguage,
        secondLanguage: secondLanguage,

  }, function(error) {
  if (error){

    stopLoader();

    showSnackbar("An error has occured! Please try again later.");
}

这就是我读取数据的方式,但 listname 的值为“未定义”:

 var database = firebase.database().ref().child('codes');
    var codeInput = document.getElementById('mainSearch');

    database.on('value', function(snapshot) {
            if (!snapshot.hasChild(codeInput.value)) {

                codeInput.value = "";
                showSnackbar("A list with this code does not exist!<br><br>Please try another one.")
            }
            else {

               var data = snapshot.val();
               var listname = data.listname;


               console.log(listname);



            }
        });

这是我从数据库中获得的值:

This is the value I get from the database

这就是数据库中数据的结构:

This is how the data is structured in the database:

最佳答案

我将代码更改为这样,现在它可以完美运行。问题是我试图从错误的 child 那里获取值(value)。感谢您的帮助和耐心!

var database = firebase.database().ref().child('codes');
var codeInput = document.getElementById('mainSearch');


database.child(codeInput).on('value', function(snap) {

          var data = snap.val();

          var listName = data.listname;
          var mainLanguage = data.mainLanguage;
          var secondLanguage = data.secondLanguage;
          var mainArray = data.mainArray;
          var secondArray = data.secondArray;

        }); 

关于javascript - 当 Firebase 数据不是 "undefined"时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42563450/

相关文章:

javascript - 堆栈跟踪中的 node.js 文件位于何处?

javascript - 获取调用函数的元素的 ID

firebase - Chrome 69 不支持 Firebase SDK

javascript - 过滤列的集合

javascript - React.js 使用相同的输入文本框编辑待办事项

ios - 为当前用户 Firebase 创建静态变量?

javascript - 重定向后如何将用户带到完全相同的位置?

Firebase 匿名身份验证和设备 ID

android - 如何修复 recyclerview 适配器的这种奇怪行为?

javascript - 使用 Firebase 和 Express/Node.js 获得待处理的 promise