我有一个表示Firebase文档ID的字符串数组,如下所示:
var idArray = [“PuLDb90jgz3a5P8bLQoy”, “PMKoZIp46umXQnUlA64a”, “cVGbD3Wy4gWjZ9fZP7h1”]
此数组是动态的,由以前的getDocuments调用生成。其中最多可以包含15个ID字符串,因此不能对其进行硬编码。
在每个Firebase文档中,我都将一个名为menuPosition的Int字段设置为当前值。
我尝试做的是更新出现在idArray中的每个文档,并且只需从-1\f25 menuPosition-1字段值一次更新。
本应如此简单明了的事情却让我抓狂--有人知道一个简单的方法吗?显然,如果我把它放在一个for循环中,那么代码将运行太多次,我的menuPosition值将会是错误的。我只希望每个操作执行一次。
任何帮助都将不胜感激
1条答案
按热度按时间rekjcdws1#
只需在文档ID上运行一个循环,并在每次迭代中递减该字段。
如果您希望此操作是原子的,那么只需将其 Package 在批处理写入中即可。