首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在防火墙中创建自定义id文档(Firebase模块SDK (v9))

如何在防火墙中创建自定义id文档(Firebase模块SDK (v9))
EN

Stack Overflow用户
提问于 2021-10-08 16:22:36
回答 1查看 903关注 0票数 1

如何使用新的模块化SDK V9在防火墙中创建具有自定义id的文档?

代码语言:javascript
复制
const register = async function (adminEmail){
  try{
    const docSnap = await getDoc(availableIdRef);
    const collegeId = docSnap.data().id; //This should be the document id

    const adminRef = collection(firestore, 'admin');
    await addDoc(adminRef, {adminEmail, collegeId});

  }catch(e){
    alert("Error!");
  }
}

我想在collegeId集合中创建一个id为admin的新文档。

我知道如何在web 8(命名空间)中这样做,但对web 9(模块化)一无所知。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-08 16:55:24

您可以使用setDoc()方法来指定ID,而不是addDoc,这将生成文档中提到的随机ID。

代码语言:javascript
复制
const adminRef = doc(firestore, 'admin', collegeId);
//       doc  --->^
await setDoc(adminRef, {email: adminEmail, id: collegeId}) // overwrites the doc if it already exists
//    ^^^

还请注意,要创建DocumentReference,您需要使用doc()而不是用于创建CollectionReferencecollection()。我在这里解释了这2种不同之处:修复:在Webv9中添加新数据的模式是什么?

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69498975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档