Задать вопрос

Как получить рандомный документ из коллекции firebase?

У меня есть страница, где отображаются все элементы из firebase:

<div class="doggo" v-for="dog in doggo" :key="dog.id">
    <h2>{{ dog.name }}</h2>
    <var-image :src="dog.photo" />
    <p>{{ dog.desc }}</p>
</div>


И собственно скрипт, где я получаю все нужные данные из firebase:

firebase.initializeApp(config);
const db = firebase.firestore();
const auth = firebase.auth();
const storage = firebase.storage();
const doggoCollection = db.collection("doggo");

export {
  db,
  auth,
  storage,
  doggoCollection,
};


import { doggoCollection, storage } from "@/firebase";

export default {
  data() {
    return {
      doggo: [],
    };
  },
  methods: {
    async getDogs() {
      try {
        const querySnapshot = await doggoCollection.get();
        querySnapshot.forEach(async (doc) => {
          console.log(doc.data());
          let img = "";
          if (doc.data().photo) {
            img = await storage.ref().child(doc.data().photo).getDownloadURL();
          }
          this.doggo.push({
            id: doc.id,
            name: doc.data().name,
            desc: doc.data().desc,
            photo: img,
            img: doc.data().photo,
          });
          console.log("get doggo", this.doggo);
        });

        console.log(this.doggo);
      } catch (e) {
        console.log(e);
      }
    },
  },
  async mounted() {
    await this.getDogs();
  },
};

При загрузке страницы я хочу получить только одно рандомное значение из коллекции. В документации firebase я не нашла ничего, чтобы могло мне помочь.
  • Вопрос задан
  • 103 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы