因此,我正在尝试递增数据,以便将一个num发送到其他用户的num。
const sendNum = async(e) => {
e.preventDefault();
const targetQuery = query(userCol, where("keycode", "==", parseInt(target)));
const targetSnapshot = await getDocs(targetQuery)
targetSnapshot.forEach((document) => {
console.log(document.data().num)
console.log(document.id)
const targetRef = doc(db, 'users', document.id)
setDoc(targetRef, {
num: // increment user data here
}, {merge: true})
})
}但我发现的一份文档,我并不是真的理解它们。据我所知,它已经过时了。因此,如果有人知道如何操作,我将非常高兴:)
发布于 2021-08-31 15:15:38
文档中有一个专门的部分,叫做increment a numeric value。
import { setDoc, increment } from "firebase/firestore";
await setDoc(targetRef, {
num: increment(50)
});不能在forEach循环中使用await (setDoc返回一个promise,必须等待),所以尝试使用Batch Writes或Promise.all()。
https://stackoverflow.com/questions/69001215
复制相似问题