每次用户登录时,此代码都会创建一个新文档,但我的任务是更新现有的相同用户 ID 文档(如果存在),否则创建一个新文档。我如何在 V9 Firebase 中做到这一点?
当前代码
setDoc(
query(collectionRef),
// db.collection('users').doc(user.uid).set(
{
email: user.email,
lastSeen: serverTimestamp(),
photoURL: user.photoURL
}, {
merge: true
}
);
访问文档 UID 的旧代码:
最佳答案
setDoc()
中的第一个参数应该是 DocumentReference
:
import { doc, setDoc } from "firebase/firestore"
const docRef = doc(db, "users", user.uid);
setDoc(docRef, {
email: user.email,
lastSeen: serverTimestamp(),
photoURL: user.photoURL
}, {
merge: true
}).then(() => console.log("Document updated"));
关于javascript - 如何使用 Firebase Modular SDK (V9) 按 ID 更新文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71527976/