嵌套循环回调/承诺问题

时间:2018-11-02 15:42:14

标签: node.js firebase callback promise nested

我不知道如何返回嵌套循环的mealsOnline。由于第二个循环的大小有所变化,因此似乎无法进行回调。而且我不确定诺言我在做错什么。

  function cookMapData() {
     var mealsOnline = [];
     db.collection('users').get().then(function (snapshot) {
        snapshot.forEach(cookUser => {
           cookUser.ref.collection('meals').where("portion", ">=", 1).get().then(function (snapshot2) {
              snapshot2.forEach(meal => {
                 console.log("test2");
                 var mealObject = meal.data();
                 mealObject.address = cookUser.data().address;
                 mealsOnline.push(mealObject);
              });
           });
        });
        // return Promise.all(mealsOnline);
     }).catch(err => {
        console.log('Error getting documents', err);
     });
  };

0 个答案:

没有答案