"array.forEach не является функцией" после развертывания firebase, но работает на базе firebase - PullRequest
0 голосов
/ 30 апреля 2019

После развертывания мой массив, кажется, не определен, и я получаю ошибку «forEach is not function»:

   textPayload: "TypeError: currencies.forEach is not a function
    at currenciesMenuConfiguration (/srv/menu/currencies-menu.js:22:16)

Вот код для массива валют:

    async function currenciesMenuConfiguration() {
    currencies = await getCol("currencies")
    currencies.forEach(element => {
        return currenciesList[element[Object.keys(element)].id] = element[Object.keys(element)].current
    });
}

Это вызывается сразу после определения с помощью currenciesMenuConfiguration()

getCol определяется как:

// Get all documents in collection from Firestore
async function getCol(colName) {
  return fs.collection(colName).get()
  .then(res => {
    return res.docs.map(doc => {
      var rObj = {};
      rObj[doc.id] = doc.data();
      return rObj;
    })
  })
  .catch(err => {
    return `Error getting collection: ${err}`;
  });  
}

Как уже упоминалось в firebase, он работает без проблем.После развертывания я получаю эту ошибку.Я что-то упускаю из-за асинхронного кода в облаке?

Кроме того, любые советы о том, как я буду отлаживать это сам, будут очень благодарны.# BeginngersLife.

// Я проверил вопросы о firebase serve против развертывания, но в основном они касаются проблем, связанных с развертыванием, или не решают проблему, с которой я сталкиваюсь.Один вопрос, который может помочь мне продвинуться в этом: Служба Firebase и функции отладки? .

1 Ответ

0 голосов
/ 02 мая 2019

См. Комментарий ниже вопрос: я действительно не возвращал массив, но объект.Закрытие.Спасибо за подсказку @Frank van Puffelen.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...