database namespace

函数

函数 说明
instance(instance) 注册一个在特定 Firebase Realtime Database 实例中的事件时触发的函数。
ref(路径) 注册一个在发生 Firebase Realtime Database 写入事件时触发的函数。

说明
DataSnapshot 表示 Firebase Realtime Database 数据快照的界面。
InstanceBuilder Firebase Realtime Database 实例构建器界面。通过 [database.instance()](providers_database_.html#instance) 访问。
RefBuilder Firebase Realtime Database 引用构建器界面。通过 [functions.database.ref()](functions.database#.ref) 访问。

database.instance()

注册一个在发生来自特定 Firebase Realtime Database 实例的事件时触发的函数。

将此方法与 ref 结合使用可指定要监控数据库事件的实例。例如 firebase.database.instance('my-app-db-2').ref('/foo/bar')

请注意,在没有 instance 的情况下使用的 functions.database.ref 会监控事件的 *默认* 实例。

签名

export declare function instance(instance: string): InstanceBuilder;

参数

参数 类型 说明
实例 字符串 要监视写入事件的数据库实例的实例名称。

返回

InstanceBuilder

Firebase Realtime Database 实例构建器界面。

database.ref()

注册一个在发生 Firebase Realtime Database 写入事件时触发的函数。

此方法的行为与客户端和 Admin Firebase SDK 中的同名方法非常相似。如果对数据库所做的任何更改都会影响所提供的 path 中或其中的数据,则会触发 Cloud Functions 中的事件。

在 Cloud Functions 中监听 Realtime Database 事件与在客户端和 Admin SDK 中使用 Realtime Database 之间存在三个重要区别:

  1. Cloud Functions 允许在 path 名称中使用通配符。大括号 ({}) 中的任何 path 组成部分都是与所有字符串匹配的通配符。与 Cloud Functions 函数的特定调用匹配的值将作为 [EventContext.params](cloud_functions_eventcontext.html#params 对象) 的一部分返回。例如,ref("messages/{messageId}")/messages/message1/messages/message2 的更改匹配,导致 event.params.messageId 分别设置为 "message1""message2"

  2. Cloud Functions 不会针对部署前已存在的数据触发事件。

  3. Cloud Functions 函数事件可以访问更多信息,包括之前的事件数据的快照以及触发 Cloud Functions 函数的用户的相关信息。

签名

export declare function ref<Ref extends string>(path: Ref): RefBuilder<Ref>;

参数

参数 类型 说明
路径 参考 数据库中要监视写入事件的路径。

返回

RefBuilder<Ref>

Firebase Realtime Database 构建器界面。