电源火库云火炉插件
非官方电容插件 火地云炉[^1]
使用大小写
Cloud Firestore插件通常用于存储并同步云中的应用数据,例如:
- 实时更新:通过收听文档和带快照收听器的收取更改来更新您的用户界面.
- 用户生成的内容: 创建,读取,更新并删除用户配置文件,帖子或其他应用数据的文档.
- 复杂查询: 带有复合过滤器和查询限制的过滤和排序集合,例如
where, (中文(简体) ),orderBy,以及limit。 。 。 . - 离线支持: 启用离线持久性并控制网络访问,以配合本地缓存数据.
- 原子写: 以单个原子批次执行多个写入操作
writeBatch(...)。 。 。 .
兼容性
| 插件版本 | 电容版本 | 状态 |
|---|---|---|
| 8.x.x (英语) | >=8.x.x | 积极支持 |
| 7.x.x (中文(简体) ) | 7.x.x (中文(简体) ) | 折旧 |
| 6.x.x (中文(简体) ) | 6.x.x (中文(简体) ) | 折旧 |
指南
- 宣布控制器火库云火炉插件
- 控制器 Firestore:实时数据和离线同步:实时收听者,离线持续,原子用这个插件写作.
- 如何用电容和火把包扎角相机: 使用此插件与 Cloud 存储一起存储并同步用户数据 .
- 如何在电容App中使用火把:数据库如何在真实的应用中与认证,存储,以及其他家庭结合.
安装
你可以用我们的 AI 辅助设置 以安装插件. 添加数据 超级技能 至您的 AI 工具,使用以下命令:
npx skills add capawesome-team/skills --skill capacitor-plugins
然后使用下列提示:
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capacitor-firebase/firestore` plugin in my project.
如果你喜欢 手动设置,通过运行以下命令来安装插件,并遵循下面的平台特定指令:
npm install @capacitor-firebase/firestore
npx cap sync
如果您还没有将 Firebase 添加到您的项目中(机器人 编号 : iOS系统 编号 : 网页) (中文(简体) ).
机器人
变量
如果需要, 您可以在您的应用程序中定义以下工程变量 variables.gradle 要更改依赖的默认版本的文件 :
$firebaseFirestoreVersion版本com.google.firebase:firebase-firestore(默认 :26.0.2(中文(简体) )
如果您在工程中遇到其它插件的依赖性冲突, 这会有所帮助 .
iOS系统
Swift 软件包管理器
在您的 capacitor.config.json (或 capacitor.config.ts) 避免 SwiftPM 软件包识别相撞数字 :
{
"experimental": {
"ios": {
"spm": {
"packageOptions": {
"@capacitor-firebase/firestore": {
"symlink": true
}
}
}
}
}
}
请注意目标 packageOptions 支持需要控制器 CLI 8.4.0+ (中文(简体) )。 。 。 .
配置
这些配置值是可用的 :
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
databaseId | string | 要使用的 Firestore 数据库的数据库 ID 。 仅供Android和iOS使用. | 8.2.0 (中文(简体) ) |
实例
单位 capacitor.config.json数字 :
{
"plugins": {
"FirebaseFirestore": {
"databaseId": undefined
}
}
}
单位 capacitor.config.ts数字 :
/// <reference types="@capacitor-firebase/firestore" />
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
FirebaseFirestore: {
databaseId: undefined,
},
},
};
export default config;
演示
这里有一个实例: robingenz/电容器-火力基地-插座-demo
启动模板
以下启动模板可供使用:
使用量
以下例子显示如何创建,读取,更新并删除文档,更新带有字段值的文档,执行分批写作,查询集合,控制网络访问,使用Firebase模拟器,并聆听并删除实时更新.
创建文档
将新文档添加到自动生成的ID的收藏中,或者在已知的参考文献中写入文档 setDocument(...)设置 merge 改为 true 将数据与现有文档合并:
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const addDocument = async () => {
await FirebaseFirestore.addDocument({
reference: 'users',
data: {
first: 'Alan',
last: 'Turing',
born: 1912
},
});
};
const setDocument = async () => {
await FirebaseFirestore.setDocument({
reference: 'users/Aorq09lkt1ynbR7xhTUx',
data: {
first: 'Alan',
last: 'Turing',
born: 1912
},
merge: true,
});
};
读取文档
阅读一份文件时参考:
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const getDocument = async () => {
const { snapshot } = await FirebaseFirestore.getDocument({
reference: 'users/Aorq09lkt1ynbR7xhTUx',
});
return snapshot;
};
更新或删除文档
更新现有文档的字段或全部删除:
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const updateDocument = async () => {
await FirebaseFirestore.updateDocument({
reference: 'users/Aorq09lkt1ynbR7xhTUx',
data: {
first: 'Alan',
last: 'Turing',
born: 1912
},
});
};
const deleteDocument = async () => {
await FirebaseFirestore.deleteDocument({
reference: 'users/Aorq09lkt1ynbR7xhTUx',
});
};
用字段值更新文档
使用 FieldValue 帮助增加数字、设置服务器时间戳、修改数组或删除字段:
import { FieldValue, FirebaseFirestore } from '@capacitor-firebase/firestore';
const updateDocumentWithFieldValue = async () => {
await FirebaseFirestore.updateDocument({
reference: 'users/Aorq09lkt1ynbR7xhTUx',
data: {
born: FieldValue.increment(1),
updatedAt: FieldValue.serverTimestamp(),
nicknames: FieldValue.arrayUnion('Prof'),
tags: FieldValue.arrayRemove('draft'),
deprecatedField: FieldValue.delete(),
},
});
};
执行批次写入
执行多集,更新,并删除单个原子批的操作 :
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const writeBatch = async () => {
await FirebaseFirestore.writeBatch({
operations: [
{
type: 'set',
reference: 'users/Aorq09lkt1ynbR7xhTUx',
data: {
first: 'Alan',
last: 'Turing',
born: 1912
},
options: { merge: true },
},
{
type: 'update',
reference: 'users/Aorq09lkt1ynbR7xhTUx',
data: {
first: 'Alan',
last: 'Turing',
born: 1912
},
},
{
type: 'delete',
reference: 'users/Aorq09lkt1ynbR7xhTUx',
},
],
});
};
查询收藏
从收藏组或收藏组读取多份文件。 您可以使用复合过滤器过滤结果, 并应用查询限制, 如 orderBy 财务报告和审定财务报表 limit数字 :
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const getCollection = async () => {
const { snapshots } = await FirebaseFirestore.getCollection({
reference: 'users',
compositeFilter: {
type: 'and',
queryConstraints: [
{
type: 'where',
fieldPath: 'born',
opStr: '==',
value: 1912,
},
],
},
queryConstraints: [
{
type: 'orderBy',
fieldPath: 'born',
directionStr: 'desc',
},
{
type: 'limit',
limit: 10,
},
],
});
return snapshots;
};
const getCollectionGroup = async () => {
const { snapshots } = await FirebaseFirestore.getCollectionGroup({
reference: 'users',
compositeFilter: {
type: 'and',
queryConstraints: [
{
type: 'where',
fieldPath: 'born',
opStr: '==',
value: 1912,
},
],
},
queryConstraints: [
{
type: 'orderBy',
fieldPath: 'born',
directionStr: 'desc',
},
{
type: 'limit',
limit: 10,
},
],
});
return snapshots;
};
控制网络访问
禁用并重新启用网络的使用, 例如强制插件与本地缓存数据合作 :
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const enableNetwork = async () => {
await FirebaseFirestore.enableNetwork();
};
const disableNetwork = async () => {
await FirebaseFirestore.disableNetwork();
};
使用火地模拟器
将插件连接到本地端 火地模拟器 开发过程中的实例:
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const useEmulator = async () => {
await FirebaseFirestore.useEmulator({
host: '10.0.2.2',
port: 9001,
});
};
听取实时更新
将快照收听器附加到文档、集合或集合组,以便在数据发生变化时得到通知:
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const addDocumentSnapshotListener = async () => {
const callbackId = await FirebaseFirestore.addDocumentSnapshotListener(
{
reference: 'users/Aorq09lkt1ynbR7xhTUx',
},
(event, error) => {
if (error) {
console.error(error);
} else {
console.log(event);
}
}
);
return callbackId;
};
const addCollectionSnapshotListener = async () => {
const callbackId = await FirebaseFirestore.addCollectionSnapshotListener(
{
reference: 'users',
compositeFilter: {
type: 'and',
queryConstraints: [
{
type: 'where',
fieldPath: 'born',
opStr: '==',
value: 1912,
},
],
},
queryConstraints: [
{
type: 'orderBy',
fieldPath: 'born',
directionStr: 'desc',
},
{
type: 'limit',
limit: 10,
},
],
},
(event, error) => {
if (error) {
console.error(error);
} else {
console.log(event);
}
}
);
return callbackId;
};
const addCollectionGroupSnapshotListener = async () => {
const callbackId = await FirebaseFirestore.addCollectionGroupSnapshotListener(
{
reference: 'users',
compositeFilter: {
type: 'and',
queryConstraints: [
{
type: 'where',
fieldPath: 'born',
opStr: '==',
value: 1912,
},
],
},
queryConstraints: [
{
type: 'orderBy',
fieldPath: 'born',
directionStr: 'desc',
},
{
type: 'limit',
limit: 10,
},
],
},
(event, error) => {
if (error) {
console.error(error);
} else {
console.log(event);
}
}
);
return callbackId;
};
删除听众
使用其调回ID删除单个快照收听者, 或者立即删除所有收听者 :
import { FirebaseFirestore } from '@capacitor-firebase/firestore';
const removeSnapshotListener = async (callbackId: string) => {
await FirebaseFirestore.removeSnapshotListener({
callbackId,
});
};
const removeAllListeners = async () => {
await FirebaseFirestore.removeAllListeners();
};
API 密码
addDocument(...)addCollectionGroupSnapshotListener(...)addCollectionSnapshotListener(...)addDocumentSnapshotListener(...)clearPersistence()deleteDocument(...)disableNetwork()disablePersistence()enablePersistence(...)enableNetwork()getCollection(...)getCollectionGroup(...)getCountFromServer(...)getDocument(...)removeAllListeners()removeSnapshotListener(...)setDocument(...)updateDocument(...)useEmulator(...)writeBatch(...)- 接口
- 类型异名
添加文档(...)
addDocument(options: AddDocumentOptions) => Promise<AddDocumentResult>
将新文档添加到带给定数据的收藏中.
| 参数 | 类型 |
|---|---|
options | AddDocumentOptions |
回返情况: Promise<AddDocumentResult>
自: 5.2.0 (中文(简体) )
添加 Collection GroupSnapshot 倾听器(...)
addCollectionGroupSnapshotListener<T extends DocumentData = DocumentData>(options: AddCollectionGroupSnapshotListenerOptions, callback: AddCollectionGroupSnapshotListenerCallback<T>) => Promise<CallbackId>
添加收集组快照事件的听众 .
| 参数 | 类型 |
|---|---|
options | AddCollectionGroupSnapshotListenerOptions |
callback | AddCollectionGroupSnapshotListenerCallback<T> |
回返情况: Promise<string>
自: 6.1.0 (中文(简体) )
添加 CollectionSnapshot 倾听器(...)
addCollectionSnapshotListener<T extends DocumentData = DocumentData>(options: AddCollectionSnapshotListenerOptions, callback: AddCollectionSnapshotListenerCallback<T>) => Promise<CallbackId>
为收集快照事件添加一个听众 .
| 参数 | 类型 |
|---|---|
options | AddCollectionSnapshotListenerOptions |
callback | AddCollectionSnapshotListenerCallback<T> |
回返情况: Promise<string>
自: 5.2.0 (中文(简体) )
添加 DocumentSnapshot 倾听器(...)
addDocumentSnapshotListener<T extends DocumentData = DocumentData>(options: AddDocumentSnapshotListenerOptions, callback: AddDocumentSnapshotListenerCallback<T>) => Promise<CallbackId>
为文档快照事件添加一个收听器.
| 参数 | 类型 |
|---|---|
options | AddDocumentSnapshotListenerOptions |
callback | AddDocumentSnapshotListenerCallback<T> |
回返情况: Promise<string>
自: 5.2.0 (中文(简体) )
持续时间( )
clearPersistence() => Promise<void>
清除持续存储。 这包括待写和缓存文件.
请注意: 必须在应用程序关闭后或应用程序被初始化后调用 .
自: 5.2.0 (中文(简体) )
删除文档(...)
deleteDocument(options: DeleteDocumentOptions) => Promise<void>
删除指定引用提及的文档.
| 参数 | 类型 |
|---|---|
options | DeleteDocumentOptions |
自: 5.2.0 (中文(简体) )
禁用网络
disableNetwork() => Promise<void>
禁用网络 .
自: 5.2.0 (中文(简体) )
禁用持久性( C)
disablePersistence() => Promise<void>
禁用离线持久性 .
请注意: 必须在任何其他 Firestore 方法之前调用.
自: 8.2.0 (中文(简体) )
启用持久性(...)
enablePersistence(options?: EnablePersistenceOptions | undefined) => Promise<void>
启用离线持久性 .
请注意: 必须在任何其他 Firestore 方法之前调用.
| 参数 | 类型 |
|---|---|
options | EnablePersistenceOptions |
自: 8.2.0 (中文(简体) )
启用网络
enableNetwork() => Promise<void>
复能用通网相会.
自: 5.2.0 (中文(简体) )
获取收集(...)
getCollection<T extends DocumentData = DocumentData>(options: GetCollectionOptions) => Promise<GetCollectionResult<T>>
读取指定引用的集合.
| 参数 | 类型 |
|---|---|
options | GetCollectionOptions |
回返情况: Promise<GetCollectionResult<T>>
自: 5.2.0 (中文(简体) )
获取收集组(...)
getCollectionGroup<T extends DocumentData = DocumentData>(options: GetCollectionGroupOptions) => Promise<GetCollectionGroupResult<T>>
读取指定引用的收藏组.
| 参数 | 类型 |
|---|---|
options | GetCollectionGroupOptions |
回返情况: Promise<GetCollectionGroupResult<T>>
获取 Count from Server (...)
getCountFromServer(options: GetCountFromServerOptions) => Promise<GetCountFromServerResult>
获取收藏中的文档数量.
| 参数 | 类型 |
|---|---|
options | GetCountFromServerOptions |
回返情况: Promise<GetCountFromServerResult>
自: 6.4.0 (单位:千美元)
获取文档(...)
getDocument<T extends DocumentData = DocumentData>(options: GetDocumentOptions) => Promise<GetDocumentResult<T>>
读取指定引用提及的文档.
| 参数 | 类型 |
|---|---|
options | GetDocumentOptions |
回返情况: Promise<GetDocumentResult<T>>
自: 5.2.0 (中文(简体) )
删除所有收听器( )
removeAllListeners() => Promise<void>
删除此插件的所有听众 .
自: 5.2.0 (中文(简体) )
删除 Snapshot 听取器(...)
removeSnapshotListener(options: RemoveSnapshotListenerOptions) => Promise<void>
删除文档或收藏快照事件的收听器 .
| 参数 | 类型 |
|---|---|
options | RemoveSnapshotListenerOptions |
自: 5.2.0 (中文(简体) )
设置文档(...)
setDocument(options: SetDocumentOptions) => Promise<void>
写入指定引用所引用的文档. 如果文档尚未存在,则会创建.
| 参数 | 类型 |
|---|---|
options | SetDocumentOptions |
自: 5.2.0 (中文(简体) )
更新文档(...)
updateDocument(options: UpdateDocumentOptions) => Promise<void>
更新指定引用所提及文档中的字段.
| 参数 | 类型 |
|---|---|
options | UpdateDocumentOptions |
自: 5.2.0 (中文(简体) )
使用计算器(...)
useEmulator(options: UseEmulatorOptions) => Promise<void>
给Firestore模拟器提供你的应用程序.
| 参数 | 类型 |
|---|---|
options | UseEmulatorOptions |
自: 6.1.0 (中文(简体) )
写入批次(...)
writeBatch(options: WriteBatchOptions) => Promise<void>
执行多个写入操作作为单批.
| 参数 | 类型 |
|---|---|
options | WriteBatchOptions |
自: 6.1.0 (中文(简体) )
接口
添加文档结果
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | DocumentReference | 新增加的文件的参考文献. | 5.2.0 (中文(简体) ) |
添加文档选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
data | DocumentData | 含有新文档数据的对象. | 5.2.0 (中文(简体) ) |
文档数据
添加 Collection GroupSnapshot 听取选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 6.1.0 (中文(简体) ) |
compositeFilter | QueryCompositeFilterConstraint | 要应用的过滤器 . | 6.1.0 (中文(简体) ) |
queryConstraints | QueryNonFilterConstraint[] | 缩小或命令要取回的一组文档,但不明确过滤文档字段. | 6.1.0 (中文(简体) ) |
查询复合纤维约束
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'and' | 'or' | 制约之类. | 5.2.0 (中文(简体) ) |
queryConstraints | QueryFilterConstraint[] | 要应用的过滤器 . | 5.2.0 (中文(简体) ) |
查询 Felter 约束
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'where' | 制约之类. | 5.2.0 (中文(简体) ) |
fieldPath | string | 比较之道. | 5.2.0 (中文(简体) ) |
opStr | QueryOperator | 要应用的操作字符串 . | 5.2.0 (中文(简体) ) |
value | any | 比较值. | 5.2.0 (中文(简体) ) |
查询命令By 约束
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'orderBy' | 制约之类. | 5.2.0 (中文(简体) ) |
fieldPath | string | 比较之道. | 5.2.0 (中文(简体) ) |
directionStr | OrderByDirection | 排序的方向. | 5.2.0 (中文(简体) ) |
查询Limit 约束
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'limit' | 'limitToLast' | 制约之类. | 5.2.0 (中文(简体) ) |
limit | number | 返回的最大项数 . | 5.2.0 (中文(简体) ) |
查询开始控制
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'startAt' | 'startAfter' | 制约之类. | 5.2.0 (中文(简体) ) |
reference | string | 以字符串开头的引用,路径组件由前斜线分隔(/) (中文(简体) ). 请注意: 这需要额外的文档读取. | 5.2.0 (中文(简体) ) |
查询控制
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'endAt' | 'endBefore' | 制约之类. | 5.2.0 (中文(简体) ) |
reference | string | 以字符串结尾或前面的引用,路径组件由前斜线分隔(/) (中文(简体) ). 请注意: 这需要额外的文档读取. | 5.2.0 (中文(简体) ) |
获取收集组结果
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
snapshots | DocumentSnapshot<T>[] | 收藏中的文档. | 5.2.0 (中文(简体) ) |
文档抓取
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
id | string | 文档的标识符在其收藏中. | 5.2.0 (中文(简体) ) |
path | string | 文档的路径 . | 5.2.0 (中文(简体) ) |
data | T | null | 包含文档数据的对象。 回返 null 如果文档不存在. | 5.2.0 (中文(简体) ) |
metadata | SnapshotMetadata | 关于快照的元数据,关于快照的来源,如果有局部修改的话. | 6.2.0 (单位:千美元) |
快照元数据
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
fromCache | boolean | 如果快照是从缓存数据创建的, 则为真 . | 6.2.0 (单位:千美元) |
hasPendingWrites | boolean | 如果快照是从待定的写入数据创建的, 则为真 . | 6.2.0 (单位:千美元) |
添加收听器选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
compositeFilter | QueryCompositeFilterConstraint | 要应用的过滤器 . | 5.2.0 (中文(简体) ) |
queryConstraints | QueryNonFilterConstraint[] | 缩小或命令要取回的一组文档,但不明确过滤文档字段. | 5.2.0 (中文(简体) ) |
获取收集结果
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
snapshots | DocumentSnapshot<T>[] | 收藏中的文档. | 5.2.0 (中文(简体) ) |
添加文档截图听器选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
获取文档结果
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
snapshot | DocumentSnapshot<T> | 当前文档内容 . | 5.2.0 (中文(简体) ) |
删除文档选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
启用持久性选项
| Prop | 类型 | 说明 | 默认 | 自兹 |
|---|---|---|---|---|
cacheSizeBytes | number | 以字节表示的缓存大小 . | 104857600 (100 MB) | 8.2.0 (中文(简体) ) |
synchronizeTabs | boolean | 是否在多个标签中同步持久性 。 仅供Web使用. | false | 8.2.0 (中文(简体) ) |
获取收集选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
compositeFilter | QueryCompositeFilterConstraint | 要应用的过滤器 . | 5.2.0 (中文(简体) ) |
queryConstraints | QueryNonFilterConstraint[] | 缩小或命令要取回的一组文档,但不明确过滤文档字段. | 5.2.0 (中文(简体) ) |
获取收集组选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
compositeFilter | QueryCompositeFilterConstraint | 要应用的过滤器 . | 5.2.0 (中文(简体) ) |
queryConstraints | QueryNonFilterConstraint[] | 缩小或命令要取回的一组文档,但不明确过滤文档字段. | 5.2.0 (中文(简体) ) |
从服务员那里获取数据
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
count | number | 所收文件数. | 6.4.0 (单位:千美元) |
从服务选项中获取查询
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 6.4.0 (单位:千美元) |
compositeFilter | QueryCompositeFilterConstraint | 要应用的过滤器 . | 8.3.0 (单位:千美元) |
queryConstraints | QueryNonFilterConstraint[] | 缩小或命令要计数的一组文档,但不明确过滤文档字段. | 8.3.0 (单位:千美元) |
获取文档选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
删除Snapshot 听筒选项
| Prop | 类型 | 自兹 |
|---|---|---|
callbackId | CallbackId | 5.2.0 (中文(简体) ) |
设置文档选项
| Prop | 类型 | 说明 | 默认 | 自兹 |
|---|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) | |
data | DocumentData | 含有新文档数据的对象. | 5.2.0 (中文(简体) ) | |
merge | boolean | 是否将所提供的数据与现有文档合并 . | false | 5.2.0 (中文(简体) ) |
更新文档选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 5.2.0 (中文(简体) ) |
data | DocumentData | 含有新文档数据的对象. | 5.2.0 (中文(简体) ) |
使用编辑器选项
| Prop | 类型 | 说明 | 默认 | 自兹 |
|---|---|---|---|---|
host | string | 模拟器主机没有任何端口或方案. 使用Android模拟器设备时注意: 10.0.2.2是连接主机计算机"localhost"的特殊IP地址. | 6.1.0 (中文(简体) ) | |
port | number | 模拟器端口 . | 8080 | 6.1.0 (中文(简体) ) |
写入批次选项
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
operations | WriteBatchOperation[] | 批量执行的操作. | 6.1.0 (中文(简体) ) |
写批操作
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | 'set' | 'update' | 'delete' | 手术类型. | 6.1.0 (中文(简体) ) |
reference | string | 引用为字符串,路径组件由前斜线分隔(/) (中文(简体) ). | 6.1.0 (中文(简体) ) |
data | DocumentData | 含有新文档数据的对象. | 6.1.0 (中文(简体) ) |
options | SetOptions | 配置设定行为的对象 . | 7.3.0 (单位:千美元) |
设置选项
| Prop | 类型 | 说明 | 默认 | 自兹 |
|---|---|---|---|---|
merge | boolean | 是否应当进行合并还是应当覆盖文档. | false | 7.3.0 (单位:千美元) |
类型异名
查询过滤器约束
QueryFieldFilterConstraint | QueryCompositeFilterConstraint
查询操作器
'<' | '<=' | '==' | '>=' | '>' | '!=' | 'array-contains' | 'array-contains-any' | 'in' | 'not-in'
查询非筛选约束
QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint
命令方向
'desc' | 'asc'
添加 Collection GroupSnapshot 听取器回调
(event: AddCollectionGroupSnapshotListenerCallbackEvent<T> | null, error: any): void
添加 Collection Groups 即时收听器调用程序
调用文件夹
string
添加 CollectionSnapshot 听取器回调
(event: AddCollectionSnapshotListenerCallbackEvent<T> | null, error: any): void
添加 CollectionSnapshot 收听器调用后事件
添加文档剪接器
(event: AddDocumentSnapshotListenerCallbackEvent<T> | null, error: any): void
添加文档剪辑器
财务问题
如何实时通知我数据的变化?
附加快照监听器 addDocumentSnapshotListener(...), (中文(简体) ), addCollectionSnapshotListener(...),或 addCollectionGroupSnapshotListener(...)。每当观测到的数据发生变化时,都会引用回调。 每个收听者返回一个回调ID,您以后可以传给 removeSnapshotListener(...),或者您可以同时删除所有听众 removeAllListeners()。见 听取实时更新 举个例子.
两者有什么区别 getCollection 财务报告和审定财务报表 getCollectionGroup? 吗?
这个 getCollection(...) 在给定的引用中读取单个集合的文档。 这个 getCollectionGroup(...) 方法读取一个收藏组的文档,该组由所有具有同一ID的收藏组成. 这两种方法都支持复合过滤和查询限制.
插件离线了吗?
是的,你可以启用离线持续 enablePersistence(...) 方法,必须在任何其他Firestore方法之前使用。 您也可以使用 disableNetwork() 财务报告和审定财务报表 enableNetwork()。持续存储,包括待写和缓存文件,可用 clearPersistence(),在应用程序关闭或初始化后必须使用.
我能用一个Firestore数据库吗?
是的,你可以设置 databaseId 在您的 Capacitor 配置中选择要使用的 Firestore 数据库的配置选项(参见 配置) (中文(简体) ). 此选项仅在Android和iOS上可用.
我如何测试我的应用 与本地的Firestore案例?
使用 useEmulator(...) 通过提供主机和端口将插件连接到本地 Firebase 模拟器实例的方法。 这使得您可以在不触碰生产数据的情况下进行开发和测试.
我能用这个插件吗? 有Ionic、React、Vue或Angular?
是的,插件是框架不可知的。 它在任意网络框架的Capacitor app中工作,包括有Angular,React,或Vue的Ionic,以及平版JavaScript等项目.
相关插件
- Firebase 验证: Firebase 认证的非官方电容插件.
- 火基地云函数:Firebase云函数的非官方电容插件.
- 火地云存储:Firebase云存储的非官方电容插件.
通讯
随时更新有关卡帕韦索姆、Capacitor和Ionic生态系统的最新消息和最新消息,因为我们 《卡帕索克通讯》。 。 。 .
更改日志
见 变动情况。 。 。 .
许可证
见 自由主义。 。 。 .
[^1]: 这个项目不附属于Google LLC或其任何子公司或子公司,也不获得其认可、支持、赞助或批准.