Javascript列表对象无法添加JSON? Node.JS、Firebase

标签 javascript node.js firebase-realtime-database

router.get('/getAllMeals',function(req,res){    

    var allMeals = [];
    allMeals.push("foo");

    mealsRef.on("value",function(dataSnapShot){
        dataSnapShot.forEach(function(child){
            console.log(child.val());
            var oneMeal = child.val();
            allMeals.push(oneMeal);
        });
    }); 

    allMeals.forEach(function(obj){
        console.log(obj);
    });

    res.send(allMeals);
}); //RETRIEVE ALL

在上面的代码中,我无法将有效的 JSON 对象 oneMeal 添加到我创建的 allMeals 数组中。 console.log的结果只显示“foo”,并且长度为1。

最佳答案

假设 mealsRef.on("value",function(dataSnapShot){ 是一个有效事件;您的 res.send(allMeals); 需要在该回调中调用。基本上您响应得太早了。

关于Javascript列表对象无法添加JSON? Node.JS、Firebase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39605461/

相关文章:

javascript - jQuery css 着色不起作用

javascript - 对象类型在确定类型文件中的应用

javascript - NodeJs request.on 中传递的变量

javascript - 如何在运行时导入 typescript 中的编译文件(nodejs)

node.js - Heroku 测功机上有多少个应用程序

javascript - 在 HTML 网页中显示 Firebase 记录

android - 结合排序和过滤的好方法 - Firebase 实时数据库结构

firebase - 如何访问newData服务器变量的键?

javascript - javascript 中的生成器函数

javascript - 如何隐藏视差溢出?