【问题标题】:Should I implement lazy loading based on a client cursor or a publication?我应该基于客户端游标还是发布来实现延迟加载?
【发布时间】:2023-03-21 07:00:02
【问题描述】:

我需要确认一件事。考虑到发布返回一个游标,游标是客户端相关集合的句柄:

只要我不fetch()光标文件,我就没有真正下载过他们的数据?

这是否意味着它可能是一种过滤出版物中可发布文档并在客户端延迟加载它们的好方法?

【问题讨论】:

    标签: meteor meteor-publications


    【解决方案1】:

    只要我不 fetch() 游标文档,我就没有真正下载它们的数据?

    这是错误的。当客户端订阅一个发布时,服务器会立即发送整个匹配集,即使客户端有一段时间没有使用数据。这就是为什么客户端上的fetch能够同步返回文档(假设订阅为ready())。

    如果您不希望客户端下载某些内容,则必须在发布功能中将其过滤掉。

    【讨论】:

    • 您还可以使用响应式ready() 跟踪下载状态。
    • 好的。谢谢你的回答。我按频道拆分我的项目,每个项目都根据用户是否是频道成员进行过滤。延迟加载出版物中的每个频道项目(3 个第一个项目或 9 个项目范围)会很痛苦。
    猜你喜欢
    • 2018-03-17
    • 2020-07-14
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-02
    • 2018-02-03
    • 2021-06-26
    • 2014-06-29
    相关资源
    最近更新 更多