首页 > 解决方案 > Firestore 更新集合值

问题描述

您好,这是我的代码:

const selectedWeek = selectBoxWeek.options[selectBoxWeek.selectedIndex].value;
const selectedStudent = selectBoxAttStud.options[selectBoxAttStud.selectedIndex].value;

const selectuser = await db.collection('Presence').where('UserId', '==', selectedStudent).get();
const getA= selectuser.docs.map(doc=>doc.id);   

db.collection('presence').doc(getA[0]).update({
    selectedWeek: 1
});

在 selectedWeek 变量中,我得到了我想要更新的星期(week1,week2,week3,week4)。

文档包括:week1,week2,week3,week4

但我收到此错误: 未捕获(承诺)FirebaseError:没有要更新 的文档:因为文档中不存在 selectedWeek。

我该如何解决这个问题,以更新正确的周值?

标签: javascriptfirebasegoogle-cloud-firestore

解决方案


您可以精确地执行以下操作(https://firebase.google.com/docs/reference/js/firebase.firestore.DocumentSnapshot#ref):

var db = firebase.firestore();

db.collection("users").doc(doc.id).update({foo: "bar"});

推荐阅读