【问题标题】:How to skip initial data from onSnapshot listener in Firestore Firebase?如何跳过 Firestore Firebase 中 onSnapshot 侦听器的初始数据?
【发布时间】:2021-10-31 20:58:09
【问题描述】:

我想将通知集合用作一次性 Toast 通知的排序 WebSocket 连接,例如当用户存入加密货币并已确认时。其背后的逻辑是云函数侦听添加到集合中的文档。

我尝试收听来自所述集合的实时更新并将其限制为最后一个创建的更新,但我现在遇到的问题是我不希望用户在他们收到最后一个 toast 通知时立即收到重新加载...即如果用户不活跃,我不希望用户在下次活跃时看到通知。

我希望它们与它们完全一样,只有在用户处于活动状态时才会发出一次性 Toast 通知。所以我的问题是,有什么方法可以跳过 onSnapshot 监听器的初始数据?

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    Firestore 侦听器返回您请求的数据,然后侦听该数据的更新。无法跳过初始数据而只接收更新,但您可以通常更改您请求的数据。

    例如,如果您确保集合中的每个文档都有创建时间的时间戳,则可以使用查询来仅请求在您开始侦听后创建的数据:

    collectionRef.where("timestamp", ">=", firebase.firestore.Timestamp.fromMillis(Date.now()));
    

    【讨论】:

    • 非常感谢您提出这个想法!尽管我切换到通知的实时数据库,但它确实完成了工作。
    猜你喜欢
    • 1970-01-01
    • 2019-04-08
    • 2022-01-11
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    • 2019-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多