Получить результат функции в другом файле - PullRequest
0 голосов
/ 13 апреля 2020

У меня есть этот файл Quiz.js:

import firebase from "firebase";
import "firebase/firestore";

export const Quiz = () => {
  let quizes = [];
  firebase
    .firestore()
    .collection("quiz")
    .get()
    .then(result => {
      result.docs.map(doc => quizes.push(doc.data()));
    });
  return quizes;
};

Теперь я пытаюсь импортировать его в другой файл:

import { Quiz } from "../data/Quiz";

Когда я пытаюсь сохранить результат в журнале, как console.log(Quiz) возвращает [Function Quiz]. Я ожидаю массив объектов. Что я здесь не так делаю? Спасибо!

1 Ответ

0 голосов
/ 13 апреля 2020

Вы можете использовать Обещание .

export const Quiz = () => {
  return new Promise((resolve, reject) => {
    let quizes = [];
    firebase
      .firestore()
      .collection("quiz")
      .get()
      .then(result => {
        result.docs.map(doc => quizes.push(doc.data()));
        resolve(quizes);
      });
  });
};

Используйте его, как показано ниже

Quiz().then(res => {
  console.log(res);
}).catch(err => {
  console.log(err);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...