javascript - Firebase onSnapshot 限制下载

标签 javascript reactjs firebase react-native google-cloud-firestore

我的应用程序上有一个 firestore 监听器,它会在将项目添加到数据库时下载它们。第一次,它会下载所有文档(我正在使用 onSnapshot),但我想将其限制为 12,因为我有一个 FlatList,可以在滚动时呈现项目...

我认为,如果有超过 1000 个文档,那么第一次下载所有项目将是一个问题。我曾想过从监听器转移到普通查询,但我需要它。

有什么想法吗?

 const unsuscribe = firebase
      .getDatabase()
      .collection("reviews")
      .doc(firebase.getCurrentUser().uid)
      .onSnapshot((snapshot) => {
        let changes = snapshot.docChanges();

        changes.forEach((change) => {
          if (change.type === "added") {
            // Stuff
          }
        });
        // More Stuff
      });

最佳答案

你可以使用 limit功能?

 const unsuscribe = firebase
      .getDatabase()
      .collection("reviews")
      .doc(firebase.getCurrentUser().uid)
      .limit(12)
      .onSnapshot((snapshot) => {
        let changes = snapshot.docChanges();

        changes.forEach((change) => {
          if (change.type === "added") {
            // Stuff
          }
        });
        // More Stuff
      });

关于javascript - Firebase onSnapshot 限制下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63020337/

相关文章:

firebase - 如何使用 sendEmailVerification() 方法

javascript - 尝试使用javascript更改多个svg路径

javascript - 更改当前网页上的一些(即不是全部)显示文本

javascript - 可以将空插槽推送到数组吗?

javascript - 如何将对象数组作为 Prop 发送?

firebase - Firestore Timestamp.toDate() 以 UTC 返回日期

ios - Firebase iOS - 从其他 View Controller 访问用户对象

javascript - 使用 AngularJS 加载下一组内容

javascript - 尝试使用一些实用程序来减少 redux 样板文件

javascript - 如何访问/引用组件内的组件值