Google cloud firestore 设置相同的数据是否会触发onUpdate函数

Google cloud firestore 设置相同的数据是否会触发onUpdate函数,google-cloud-firestore,google-cloud-functions,Google Cloud Firestore,Google Cloud Functions,假设您有一个名为user的集合,其中包含以下文档: 数据类用户( val name:String=“” ) 还有一个google云功能,它被触发onUpdate 如果对不存在的文档执行此操作,会发生什么情况: fs.collection(“users”).document(“new user”).set(hashMapOf(“name”)到“Jane”),SetOptions.merge() 然后再次执行此操作(现在文档已存在): fs.collection(“users”).documen

假设您有一个名为
user
的集合,其中包含以下文档:

数据类用户(
val name:String=“”
)
还有一个google云功能,它被触发
onUpdate

如果对不存在的文档执行此操作,会发生什么情况:

fs.collection(“users”).document(“new user”).set(hashMapOf(“name”)到“Jane”),SetOptions.merge()
然后再次执行此操作(现在文档已存在):

fs.collection(“users”).document(“new user”).set(hashMapOf(“name”)到“Jane”),SetOptions.merge()
根据报告:

onUpdate:当文档已存在且任何值已更改时触发

我想知道在我的示例中是否触发了我的函数(没有更新任何字段)。
集合的属性尚未更新,但我猜测某些元数据(例如更新时间戳)一定已更改。

如果
set
调用未更改任何值,则不会独立于合并设置更新
onWrite
onUpdate
函数

但是,将在
set
操作中更新的字段取决于
SetOptions

公共静态设置选项合并()

更改set()调用的行为 仅替换其数据参数中指定的值。领域 set()调用中的省略将保持不变