Skip to content

Commit 8db64ea

Browse files
committed
chore: example using pneding promises
1 parent b0a65dd commit 8db64ea

File tree

2 files changed

+26
-10
lines changed

2 files changed

+26
-10
lines changed

Diff for: playground/src/pages/config.vue

+22-2
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,37 @@
11
<script setup lang="ts">
2-
import { doc } from 'firebase/firestore'
2+
import { doc, getDoc } from 'firebase/firestore'
33
import { useDocument } from 'vuefire'
44
import { useFirestore } from '@/firebase'
5+
import { ref } from 'vue'
6+
import { usePendingPromises } from '../../../src/ssr/plugin'
57
68
const db = useFirestore()
79
const configRef = doc(db, 'configs', 'jORwjIykFo2NmkdzTkhU')
810
// const itemRef = doc(db, 'tests', 'item')
11+
const isDoneFetching = ref(false)
12+
const isAllDoneFetching = ref(false)
913
10-
const config = useDocument(configRef)
14+
getDoc(configRef).then((data) => {
15+
console.log('got data once', data)
16+
})
17+
18+
const { data: config, promise } = useDocument(configRef, { wait: true })
1119
// const { data: hey } = useDocument(configRef)
20+
21+
promise.value.then((data) => {
22+
console.log('one', data)
23+
isDoneFetching.value = true
24+
})
25+
26+
usePendingPromises().then((data) => {
27+
console.log(data)
28+
isAllDoneFetching.value = true
29+
})
1230
</script>
1331

1432
<template>
1533
<p>config:</p>
34+
<p>finished: {{ isDoneFetching }}</p>
35+
<p>All finished: {{ isAllDoneFetching }}</p>
1636
<pre>{{ config }}</pre>
1737
</template>

Diff for: playground/src/pages/nested-collections.vue

+4-8
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,17 @@
11
<script setup lang="ts">
22
import { collection } from 'firebase/firestore'
3-
import { ref } from 'vue'
4-
import { firestoreBind } from 'vuefire'
3+
import { useCollection } from 'vuefire'
54
import { useFirestore } from '@/firebase'
65
76
const db = useFirestore()
87
const tweetsRef = collection(db, 'tweets')
98
const nestedRef = collection(db, 'nested')
109
const momentsRef = collection(db, 'moments')
1110
12-
const nested = ref([])
13-
firestoreBind(nested, nestedRef)
11+
const nested = useCollection(nestedRef)
1412
15-
const tweets = ref([])
16-
firestoreBind(tweets, tweetsRef)
17-
const moments = ref([])
18-
firestoreBind(moments, momentsRef)
13+
const tweets = useCollection(tweetsRef)
14+
const moments = useCollection(momentsRef)
1915
</script>
2016

2117
<template>

0 commit comments

Comments
 (0)