代码之家  ›  专栏  ›  技术社区  ›  Supamiu

在没有本地缓存的情况下获取数据

  •  1
  • Supamiu  · 技术社区  · 7 年前

    问题

    在Angular web应用程序中,我从一个集合中获取数据,我们称之为这个集合 lists ,我有一张单子 list1 从该集合中,使用其密钥。

    稍后,在同一个应用程序中,我将对该应用程序执行一个查询 清单 收集所有符合我标准的列表,比如说我想要 authorId 钥匙要和我现在的钥匙一样 userId

    但问题是 清单1 符合标准,所以在显示 清单 与我的标准匹配的条目,我的查询中有两个可观察到的排放,第一个是与 清单 我已经获取了条目,第二个是来自服务器的条目。

    这是一个问题,因为在用户端,他们看到加载动画,然后他们的一个列表出现(他们已经从db获得的列表),然后所有列表都出现。

    此查询的示例:

    this.firestore.collection('lists', ref => ref.where('userId', '==', 'foo'))
    

    已经试过了

    使用 skip(1) 运算符,但这不起作用,因为如果我直接进入此页面而不首先获取另一个列表,那么第一个发射就是我想要的,我跳过它,导致无限加载程序,直到有人或某事编辑其中一个列表,触发另一个发射 valueChange() 看得见。

    0 回复  |  直到 5 年前
    推荐文章