Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.68 KB | None | 0 0
  1. function cleanupFoos(startAfter) {
  2. let query = db.collection('myCollection').orderBy('createdAt').limit(200)
  3. if (startAfter) query.startAfter(startAfter)
  4. return query.get().then(querySnapshot => {
  5. startAfter = _.last(querySnapshot.docs)
  6. let batch = db.batch()
  7. let promises = querySnapshot.docs.map(doc => cleanupFoo(doc, batch))
  8. return Promise.all(promises).then(() => batch)
  9. }).then(batch => {
  10. return batch.commit()
  11. }).then(() => {
  12. return startAfter ? cleanupFoos(startAfter) : null
  13. })
  14. }
  15.  
  16. function cleanupFoo(doc, batch) {
  17. // return a promise
  18. }
  19.  
  20. // call it
  21. cleanupFoos()
  22.  
  23. startAfter = _.last(querySnapshot.docs) // --> { just this one doc }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement