Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
870 views
in Technique[技术] by (71.8m points)

firebase - Multiple Firestore queries, single promise / callback

I understand that Firestore doesn’t support logical OR for queries. My idea is to create multiple queries and merge the results at the client. I am developing a news app and I am trying to fetch all articles that contain my users’ interests tags (ex. technology, music etc) An average user has 20 tags so I will be making 20 different requests.

Does anyone has experience with chaining multiple requests and returning a unique promise when all results arrive.?

I am using the js sdk

My data structure:

articles (collection)

-article (document)
--id: 10
--time: 1502144665
--title: "test title"
--text: "test text"
--tags(obj) 
---technology: 1502144665,
---politics: 1502144665,
---sports: 1502144665

So I will need to create multiple db requests like the following.

user.tags = ["technology","politics","sports","architecture","business"];

for (var i = 0; i < user.tags.length; i++) {
  db.collection('articles').where(user.tags[i], '>', 0).orderBy(user.tags[i]))
    .get()
    .then(() => {
        // ... push to article array
  });)
}

I am trying to figure out how to create a promise / callback when every request finishes.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...