@cccteam/resource-firestore

中文文档
0.0.23发布于 2026/11/04TypeScriptES Module构建来源已验证近 30 天下载 5066

在 @cccteam/resource上, Firestore 更改实时页面的种子

中文使用文档
文档目录4 节
  1. 使用
  2. 饲料会做什么
  3. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF…
  4. 测试

@ cccteam/ 资源- firestore

Firestore 更改实时页面的种子 @cccteam/resource。 。 。 . 要求使用直播列表或直播行的页面在不投票的情况下保持当前状态:服务器 将每个订阅用户的更改文档写入该用户的更改集, 此种子 是每个标签的收听者 读取它,将每个更改 交给客户端的直播 ,用于重排行或列出更改名称。 这是唯一的包 3,取决于火地JS SDK;客户端保持自由.

页面选择什么,成本什么, 和它从未做的都是在客户端的README中 "活页"下. 这套合同没有增加任何内容 更改,客户端被写入 以便另一个可以替换它.

npm install @cccteam/resource @cccteam/resource-firestore firebase

firebase 是一个对等依赖: 应用程序安装一次, 所以 SDK 的一个副本 提供饲料和应用程序对Firebase的其他任何服务.

使用

建立种子,一旦会议得到认证,就交给客户端的直播会话; 关闭时停止会话,否则会话本身会被登录.

import { firestoreChangeFeed } from '@cccteam/resource-firestore';

const api = createApi({ baseUrl: '/api' });
await api.live.start(firestoreChangeFeed());
// ...
await api.live.stop();

角化应用程序提供它,和 AuthService 开始并停止:

import { CHANGE_FEED } from '@cccteam/resource-angular/types';
import { firestoreChangeFeed } from '@cccteam/resource-firestore';

providers: [{ provide: CHANGE_FEED, useFactory: () => firestoreChangeFeed() }];

饲料会做什么

start(identity) 接收服务器为会话主机在 GET <prefix>/live/token:GCP项目,Firestore数据库,或者模拟器 或自定义的标志。 它为项目初始化了自己的Firebase应用程序(和网络API) 键,在生产中)打开数据库,并作为用户连接:对模拟器, 与 SDK 为 uid 的模拟用户符号(connectFirestoreEmulator(db, host, port, { mockUserToken: { sub: uid, user_id: uid } })); 生产中,通过签署自定义符号 通过 Firebase Auth 在只保存在内存的认证上: 身份为 会话停止并撤销,所以没有写到浏览器的存储器上,而且 a 页面加载开始于没有用户可以重新加载. 那它会听 users/{uid}/changes,命令 以 at 一旦看到变化,就与之后的改变联系在一起.

一个听众质素的第一快照 看到了最后的变化 并释放出什么。 一开始 文档在页面本身的第一次获取之前已经存在;在错误发生后,重新同步 恢复释放出所有的东西 以后的每个文件成为一份文件 ChangeEvent数字 : 联合国 kind (单位:千美元)row, (中文(简体) ), list,或 resource, (中文(简体) ), resource, (中文(简体) ), key, (中文(简体) ), domain,以及 deleted 作为 文档携带它们,以及 at 作为十进制中的 unix 微秒, 版本的反切 携带。 文档在第二个内重写( 服务器连接到一个目标 ) (每秒)向前移动,是又一个事件;文件到期于设定的结果 没有.

静静的伸展并不是漏掉任何东西的证据:听众保持其联系 并在下降后恢复,更改文档直播10分钟,所以更改只丢失 当听者倒下或被停职的时间更长时. 因此,饲料喷出 resync 两次,没有其他。 当一个听众报告错误时,它一无所获 更多,所以在等待后再次启动,每次失败都会加倍(一秒,上升) 以最后的变化为界 转动。 当页面再次显出时(visibilitychange 改为可见,或 pageshow 从后向缓存),被隐藏的时间超过更改文档活取的时间后, 由于浏览器会节流或放下背景页面的连接,所以种子会发出再同步. 这个 live session 反射每个活行和列表 无论是用哪种方式, 并进行同样的 当它开始.

stop() 释放收听器,将身份签出,并删除其初始化的应用程序. 一站一站都记不起来:后起再听.

安全规则是服务器的船让用户读取他们自己的更改集,但什么都没有 其它的, 不要让客户端写; 种子从不写.

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}什么是可以描绘的

firestoreChangeFeed(options) 带 resyncAfterHidden (一个页面可能隐藏多久之前) 它的返回是一个再同步; 更改文档的默认寿命, retryDelay 财务报告和审定财务报表 maxRetryDelay (重启等), now (钟声)和 visibility 财务报告和审定财务报表 page (其中 文档的能见度和页面的隐藏和显示被听到; 文档和窗口由 默认). 每一个都有一个默认,一个Spec是通常的转出一个的原因.

测试

谱写反对 bun:test 运行 bun test projects/resource-firestore/ (后面的斜线使Angular 图书馆不见踪影); bun run typecheck:firestore 用 tsc 编译 projects/resource-firestore/tsconfig.spec.json。 。 。 . bun run test:firestore 运行两者。 这些规格取代了三个SDK模块(firebase/app, (中文(简体) ), firebase/auth, (中文(简体) ), firebase/firestore) 记录待机 mock.module驱动器 收听者的快照和手接出错,请站在文档和窗口中隐藏 并显示页面,并读取事件和再链接;没有Firestore、模拟或真实的 参与.

版本与发布记录

@cccteam/resource-firestore 共发布 23 个版本,首次发布于 2026/10/03;过去 12 个月发布了 23 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.0.23latest2026/11/044 天前
0.0.222026/11/035 天前
0.0.212026/11/036 天前
0.0.202026/11/036 天前
0.0.192026/11/027 天前
0.0.182026/10/309 天前

关于 @cccteam/resource-firestore 的常见问题

@cccteam/resource-firestore 是什么?

在 @cccteam/resource上, Firestore 更改实时页面的种子

如何安装 @cccteam/resource-firestore?

在项目目录运行 npm install @cccteam/resource-firestore,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:firebase(^12.19.0)、@cccteam/resource(^0.0.24)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@cccteam/resource-firestore 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cccteam/resource-firestore 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cccteam/resource-firestore 可以商用吗?

@cccteam/resource-firestore 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@cccteam/resource-firestore 的下载量有多少?

根据 npm 官方下载统计,@cccteam/resource-firestore 在 2026/10/10 – 2026/11/08 这 30 天内被下载 5,066 次,日均约 169 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cccteam/resource-firestore 还在维护吗?

最新版本 0.0.23 发布于 2026/11/04(4 天前);至今共发布 23 个版本,其中过去 12 个月发布了 23 个;首次发布于 2026/10/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。