所以我试图增加数据以将 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})
})
}
但是我找到的文档,我不太了解它们。而我所理解的,它已经过时了。所以如果有人知道如何,我会很高兴:)
该文档有一个专门的部分,称为increment a numeric value。
import { setDoc, increment } from "firebase/firestore";
await setDoc(targetRef, {
num: increment(50)
});
您不能await
在forEach
循环中使用(setDoc
返回承诺并且必须等待),因此请尝试使用Batch Writes
或Promise.all()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句