javascript - 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。
我该如何解决这个问题,以更新正确的周值?
解决方案
您可以精确地执行以下操作(https://firebase.google.com/docs/reference/js/firebase.firestore.DocumentSnapshot#ref):
var db = firebase.firestore();
db.collection("users").doc(doc.id).update({foo: "bar"});
推荐阅读
- amazon-web-services - 如何从 EC2 实例配置文件管理 EKS?
- swift - AudioKit 实时输出 PCM 数据
- javascript - 将 JavaScript 解密重构为 C# - AES 128
- fabricjs - 是否可以使用 fabric.js 创建表格画布元素?
- java - 由 maven 插件打包的 Spring Boot 应用程序不工作,在 IDE 中工作
- python - 如何使用来自另一个数据帧的值更新 Pandas 数据帧和一个新列?
- flutter - Webview不断刷新——Flutter InAppWebView
- javascript - 学习 Socket.io - 在模块和服务器之间传递数据
- reactjs - 加载动画未在 React 中渲染
- python - 带线程的基本 Mapreduce 比顺序版本慢