对事务的引用。
传递给事务的 updateFunction
的 Transaction
对象提供了在事务上下文中读取和写入数据的方法。请参阅 runTransaction()。
签名:
export declare class Transaction
方法
方法 | 修饰符 | 说明 |
---|---|---|
delete(documentRef) | 删除提供的 DocumentReference 引用的文档。 | |
get(documentRef) | 读取提供的 DocumentReference 引用的文档。 | |
set(documentRef, data) | 对提供的 DocumentReference 引用的文档执行写入操作。如果该文档尚不存在,系统将会创建该文档。 | |
set(documentRef, data, options) | 对提供的 DocumentReference 引用的文档执行写入操作。如果该文档尚不存在,系统将会创建该文档。如果您提供 merge 或 mergeFields ,则所提供的数据可以合并到现有文档中。 |
|
update(documentRef, data) | 更新由提供的 DocumentReference 引用的文档中的字段。如果应用于不存在的文档,更新将失败。 | |
update(documentRef, 字段, 值, moreFieldsAndValues) | 更新由提供的 DocumentReference 引用的文档中的字段。如果应用于不存在的文档,更新将失败。您可以通过提供以英文句点分隔的字段路径字符串或提供 FieldPath 对象来更新嵌套字段。 |
Transaction.delete()
删除提供的 DocumentReference 引用的文档。
签名:
delete<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>): this;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要删除的文档的引用。 |
返回:
此
此 Transaction
实例。用于链接方法调用。
Transaction.get()
读取提供的 DocumentReference 引用的文档。
签名:
get<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要读取的文档的引用。 |
返回:
Promise<文档快照<AppModelType, DbModelType>>
包含读取数据的 DocumentSnapshot
。
Transaction.set()
对提供的 DocumentReference 引用的文档执行写入操作。如果该文档尚不存在,系统将会创建该文档。
签名:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): this;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要设置的文档的引用。 |
数据 | WithFieldValue<AppModelType> | 文档中的字段和值的对象。 |
返回:
此
此 Transaction
实例。用于链接方法调用。
异常
错误 - 如果提供的输入不是有效的 Firestore 文档。
Transaction.set()
对提供的 DocumentReference 引用的文档执行写入操作。如果该文档尚不存在,系统将会创建该文档。如果您提供 merge
或 mergeFields
,则所提供的数据可以合并到现有文档中。
签名:
set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): this;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要设置的文档的引用。 |
数据 | PartialWithFieldValue<AppModelType> | 文档中的字段和值的对象。 |
选项 | SetOptions | 用于配置 set 行为的对象。 |
返回:
此
此 Transaction
实例。用于链接方法调用。
异常
错误 - 如果提供的输入不是有效的 Firestore 文档。
Transaction.update()
更新由提供的 DocumentReference 引用的文档中的字段。如果应用于不存在的文档,更新将失败。
签名:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): this;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要更新的文档的引用。 |
数据 | UpdateData<DbModelType> | 一个对象,包含更新文档时使用的字段和值。字段可以包含点,以引用文档中的嵌套字段。 |
返回:
此
此 Transaction
实例。用于链接方法调用。
异常
错误 - 如果提供的输入不是有效的 Firestore 数据。
Transaction.update()
更新由提供的 DocumentReference 引用的文档中的字段。如果应用于不存在的文档,更新将失败。
您可以通过提供以英文句点分隔的字段路径字符串或提供 FieldPath
对象来更新嵌套字段。
签名:
update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): this;
参数
参数 | 类型 | 说明 |
---|---|---|
参考 | DocumentReference<AppModelType, DbModelType> | 对要更新的文档的引用。 |
字段 | 字符串 |FieldPath | 要更新的第一个字段。 |
值 | 未知 | 第一个值。 |
更多字段和值 | 未知 [] | 其他键值对。 |
返回:
此
此 Transaction
实例。用于链接方法调用。
异常
错误 - 如果提供的输入不是有效的 Firestore 数据。