首页 > 解决方案 > Cloud Firestore,nodejs(云功能),同步访问

问题描述

Firestore,nodejs(云功能)中“同步”的Java等价物是什么?

假设我在数据库中保留了一个计数器,并且我想将其递增 1,因此我必须读取该值,将其递增并将其存储回来。

如何确保在读取和写入操作之间计数器值没有被另一方更改?

标签: node.jsfirebasegoogle-cloud-firestore

解决方案


如何确保在读取和写入操作之间计数器值没有被其他方更改?

有两种方法可以解决此问题。

第一个是使用事务,这是一种操作,您从文档中读取值,将其递增,然后将文档写回。

第二种解决方案是使用FieldValue.increment(50)运算符:

增量操作将字段的当前值增加或减少给定的数量。如果字段不存在或当前字段值不是数值,则操作将字段设置为给定值。

如果您需要在某个时间点递减一个值,只需将一个负值传递给increment()函数:


推荐阅读