angular - 获取没有本地缓存的数据
问题描述
问题
在一个 Angular Web 应用程序中,我从一个集合中获取数据,我们称之为这个集合lists
,我得到一个列表(让我们list1
从这个集合中调用它,使用它的 key.
稍后在同一个应用程序中,我正在对此lists
集合执行查询以获取所有符合我的条件的列表,假设我希望authorId
key 等于我的 current userId
。
但是,问题在于list1
符合条件,因此在显示lists
符合我的条件的条目的页面中,我的查询中有两个 Observable 排放,第一个是与lists
我已经获取的条目匹配的内容,第二个是来自服务器的内容。
这是一个问题,因为在用户方面,他们看到加载动画,然后显示其中一个列表(他们已经从 db 获得的列表),然后显示所有列表。
示例查询:
this.firestore.collection('lists', ref => ref.where('userId', '==', 'foo'))
已经试过了
在数据 Observable 上使用skip(1)
运算符,但这不起作用,因为如果我直接进入此页面而不先获取另一个列表,那么第一个发射就是我想要的,我正在跳过它,导致无限加载器直到有人或者编辑其中一个列表,触发valueChange()
Observable 的另一个发射。
解决方案
推荐阅读
- java - SuppressWarnings("deprecation") 在java中的一行
- matplotlib - 从 Contourplot 中获取价值 - Python Matplotlib
- odata - odata 是否支持通过多个 id 获取实体?
- python - 当我将多个数据帧存储在数据帧列表中并且我记得其中一个时,有没有办法格式化输出的列标题?
- javascript - 为什么我的导航栏出现在滚动条的顶部?
- python - python3使用生成器过滤具有多行记录的文件
- xamarin - Xamarin 表单集合视图 ItemsSource 绑定未更新 UI
- selenium - 没有框架但仍然有一个错误 element is not found
- sql - SQL 数据库可以支持“仅插入”模式吗?
- azure-devops - 查找任务组的用法