当前位置: 首页 > 知识库问答 >
问题:

Firestore Ionic Angularfire读取计数

罗俭
2023-03-14

我想使用Ionic 4 Firestore为应用程序提供离线和实时同步功能。

目标部署到本地应用程序(iOS,Android),电子应用程序(Windows和Mac),PWA。

>

  • firestore本地缓存在混合应用中是否持久?firestore缓存使用什么类型的存储?它会像localstorage一样,android/iOS会在存储空间不足时不时删除它。

    我正在用下面的代码进行测试,并启用了持久性,离线模式工作得很好。但是它似乎计算了每个应用程序启动时读取的所有文档。例如,我有100个文档。

    a、 在应用程序首次启动时,当它将所有数据同步到本地缓存时,应计为100次读取。

    当我第二次启动应用程序时,假设没有文档被更新,它不应该计算任何读取,对吗?

    c、 因为在我的监控下,每次我启动应用程序时,读取计数都会增加。

    d.是否有可能,没有更新文档,但是我的代码强制从服务器获取数据,然后消耗读取计数?

    谢谢。

    getChatMessages(groupId) {
        return this.db.collection(`groups/${groupId}/messages`, ref => ref.orderBy('createdAt')).snapshotChanges().pipe(
          map(actions => actions.map(a => {
            const data = a.payload.doc.data();
            const id = a.payload.doc.id;
            return { id, ...data };
          }))
        );
      }
  • 共有1个答案

    西门嘉石
    2023-03-14

    我猜你说的是离线数据,我想你的问题可以用文档来回答。

    1.1. firestore本地缓存在混合应用中是否持久?应该是这样的,因为你应该在你的混合应用程序中使用客户端库的功能。来自此文档:此功能缓存应用程序正在使用的云Firestore数据的副本,以便应用程序可以在设备脱机时访问数据。是的,是本地存储。

    1.2. firestore缓存使用什么类型的存储?本文简介:Cloud Firestore是一个云托管的NoSQL数据库。将数据存储在文档中,文档中包含映射到值的字段2。答:你说:“当应用程序首次启动时,当它将所有数据同步到本地缓存时,它应计为100次读取”,但如上所述,Firestore只会加载你的应用程序正在使用的数据,所以大多数情况下你会看到总数据的一个子集(100个文档)
    b-关于你关于假设不修改文档的声明,无论如何,你的应用程序将同步数据,这已经意味着一个验证请求。在本文档中声明:云Firestore客户端库自动管理在线和离线数据访问,并在设备恢复在线时同步本地数据<这个说法是正确的,并且指向了我之前提到的句子。

     类似资料:
    • 我正在尝试优化我的应用程序在Firesbase上的读取次数,并回顾我使用快照监控实时更改的方式。假设我有一个快照,返回10个最新文档,如下所示: 医生说 每次查询结果更改时(即添加、删除或修改文档时),快照处理程序都会收到一个新的查询快照。 这是否意味着每次查询更改时,我都将被计费10次读取?在这个例子中,如果添加了一个新城市(所以使用最新的“日期添加”,所以在查询中排在第一位),它将是1(只是新

    • 我想读一个文件,然后读一串单词或句子,并单独计算这些单词在文件中出现的次数。 示例输入: 示例输出: Powerful:2 月亮:3 森林: 4 未使用:天空 我有点被困在这里,这就是我得到的

    • Firebase Firestore的成本基于读取操作的数量。如果我下载一个包含不止一个子文档的高级文档(比如下载一个在Firebase实时数据库中包含不止一个子节点的父节点)。)那么会被认为是单读还是多读呢?我在文档中没有找到任何关于这一点的内容。请解释一下?

    • 我有一个应用程序,我的任务是设计一个mongo支持的数据存储。 应用程序的目标是以最快的加载时间提供最新数据(无陈旧数据)。 数据大小约为数百万,应用程序写入量很大。 在选择给定3节点副本集(1个主副本集、1个辅助副本集、1个仲裁服务器)的读取策略时,我遇到了两种不同的策略来确定从哪里读取源- > 从次级读取以减少主级的负载。使用,从而确保写入在主级和次级上都完成。设置读取首选项。到。 总是从小学

    • 在COBOL中,我从顺序行文件中读取。一行行,到EOF,诸如此类的 行的长度从40到80个字符不等。我需要知道,每行有多少个字符。但是行可以以一些空格结束,我也需要计算。所以我不能在程序中从变量取字符串的长度。READ语句是否有返回值,它返回已读行的字符数(直到达到CRLF)?

    • 我在尝试计算firestore读取计数时遇到了一些问题。firestore的读取计数总是以非常高的速度激增(每次我重新加载页面时,读取计数都会增加100个),尽管只有大约15个用户。即使我没有重新加载页面,firestore读取计数也会自动上升,这是因为订阅行为导致读取数据操作不时刷新吗?(我读过一些文章,建议如果用户只想提取一次数据,就使用“一次”)。 下面是代码片段(ts): firestor