首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果文档不存在,Firestore创建文档,并监听它

如果文档不存在,Firestore创建文档,并监听它
EN

Stack Overflow用户
提问于 2020-05-11 03:24:24
回答 1查看 334关注 0票数 0

我正在使用Firebase web client for Firestore。我有一个值id,它要么是集合中文档的id,要么是undefined。我希望使用Firestore生成的id创建文档(当id未定义时),或者在定义了id的情况下获取文档,然后侦听文档上的更改。我想留下一个函数unsubscribe,我可以调用它来分离侦听器。如下所示:

代码语言:javascript
复制
let unsubscribe;
if (recipeId) {
  unsubscribe = db
    .collection("mycollection")
    .doc(id)
    .onSnapshot(doc => myFunction(doc));
} else {
  unsubscribe = db
    .collection("mycollection")
    .doc()
    .add()
    .then(docRef =>
      db
        .collection("mycollection")
        .doc(docRef.id)
        .onSnapshot(doc => myFunction(doc))
    );
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-11 04:01:38

要添加具有随机ID的新文档:

代码语言:javascript
复制
  const promise = db
    .collection("mycollection")
    .add({})

add()返回一个带有DocumentReference的promise。然后你就可以收听了。

代码语言:javascript
复制
  promise.then((ref) => ref.onSnapshot(...))
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61717565

复制
相关文章

相似问题

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