如何在Cloud Firestore中增加现有数字字段

问题描述 投票:4回答:2

我有一个字段,表示交易数量。一旦交易发生,我想通过1递增它。我找不到任何直接执行此方法的方法。

一种方法是首先获取用户,然后使用接收到的值+ 1更新字段,但这太长而且很慢。

谁能告诉我任何其他可行的方法?

firebase google-cloud-firestore
2个回答
2
投票

Firestore现在有一个特定的运算符,称为FieldValue.increment()。通过将此运算符应用于字段,该字段的值可以作为服务器上的单个操作递增(或递减)。

incrementing a numeric value上的Firebase文档:

var washingtonRef = db.collection('cities').doc('DC');

// Atomically increment the population of the city by 50.
washingtonRef.update({
    population: firebase.firestore.FieldValue.increment(50)
});

因此,无论当前值是多少,此示例都会将总体增加50。如果该字段尚不存在(或不是数字),则在这种情况下将其设置为50


0
投票

您应该编写一个侦听事务的云函数,然后增加索引。

https://firebase.google.com/docs/functions/

© www.soinside.com 2019 - 2024. All rights reserved.