javascript - Firebase“添加”数据到现有文档不起作用
问题描述
我有一个在注册过程中创建的文档,该文档创建了具有以下属性的文档:
username: "GOOOOD"
现在,我正在尝试add
调用firstName
文档的新属性,因此它看起来像这样:
username: "GOOOOD"
firstName: "Roger"
但是,该add
功能似乎不起作用:
function ProfileContainer() {
const [profile, setProfile] = useState();
const [{ user }, dispatch] = useStateValue();
const [firstName, setFirstName] = useState("");
// add first and last name
const handleClick = () => {
if (user) {
db.collection("users").doc(user).collection("profile").doc(user).add({
firstName: firstName,
});
}
};
return (
<div className="profileContainer">
<div className="name__input">
<input
type="text"
placeholder="First Name"
onChange={(e) => setFirstName(e.target.value)}
value={firstName}
/>
</div>
<button onClick={handleClick}>Update</button>
</div>
</div>
</div>
);
}
不幸的是,该add
功能似乎不起作用。
我收到以下错误:
TypeError: firebase_utils__WEBPACK_IMPORTED_MODULE_4 _.db.collection(...).doc(...).collection(...).doc(...).add 不是函数
set
似乎有效,但我不想删除整个文档。
解决方案
推荐阅读
- c# - 使用 Table-Per-Concrete-Type 继承果园模型?
- python - 从文件索引值
- r - 识别一对数的最高和最低索引
- graphql - express graphql 总是为解析器抛出的任何错误发送 500 Internal server error
- rust - 如何在 Rust 中跨多个结构创建一个连续内存池?
- node.js - 如何在nodejs中按对象ID获取总记录
- mysql - 如何从每十二小时发生的每个“组”事件中提取第一个时间戳
- node.js - 嘲笑多个文件和静态方法
- angular - 未加载运行时编译器
- java - 代码跳转到注册应用中创建账号的错误声明坚持