【问题标题】:How to concatenate to a string field of a document in firebase如何连接到firebase中文档的字符串字段
【发布时间】:2020-05-25 08:38:37
【问题描述】:

我正在尝试使用一长串空格分隔值更新我的 firestore 数据库,在浏览完文档后,我使用以下代码访问数据库的“已预订”字段:

  db.collection("seats")
    .get()
    .then(function (querySnapshot) {
      querySnapshot.forEach(function (doc) {
        // doc.data() is never undefined for query doc snapshots
        console.log(doc.id, " => ", doc.data().getString("booked"));
      });
    });

这是我的 firebase 数据库的结构: 我想将字符串连接到这个预订字段,但我什至无法访问它。这样做时出现以下错误:

Uncaught (in promise) TypeError: doc.data(...).getString is not a function

如何访问我的 firestore 数据库中的该字段并将其连接到一些文本。

【问题讨论】:

    标签: javascript html jquery firebase google-cloud-firestore


    【解决方案1】:
    Uncaught (in promise) TypeError: doc.data(...).getString is not a function
    

    因为错误清楚地表明没有方法 getString() 与 doc.data() 关联。

    要从响应中获取字段值,您可以使用以下代码

     db.collection("seats")
    .get()
    .then(function (querySnapshot) {
      querySnapshot.forEach(function (doc) {
        // doc.data() is never undefined for query doc snapshots
    
        console.log(doc.id, " => ", doc.data().booked);
    
        // console.log("Booked",doc.data().get("booked"));
      });
    });
    

    【讨论】:

    • 谢谢,我很困惑,因为文档说函数是getString,但是再次,我得到它后如何将我的字符串连接到数据库值?
    • 我会在 pepe 的回答中添加一个事实,即您可以选择使用 get() 方法,该方法“检索由 fieldPath 指定的字段”。 IE。 doc.get("booked").
    • @DivyanshSingh 不清楚你的意思是“在我得到它后将我的字符串连接到数据库值”
    • @RenaudTarnec ,对不起,所以我基本上是在制作电影预订克隆,codepen,我想将预订座位颜色更改为蓝色,因为我希望数据库保存座位号所有预订的座位。仅当我更新数据库中的字符串(“已预订”)以存储所有已预订座位的名称时,才会发生这种情况,这就是为什么我想将另一个字符串连接到它(应为已预订座位的名称) ,但为了问题的简单性,我只问了如何将一个字符串连接到另一个 firebase 字符串字段。
    • " 我只问了如何将一个字符串连接到另一个 firebase 字符串字段。" -> 只在前端?或者你想把它写回数据库?
    猜你喜欢
    • 2019-12-27
    • 2018-12-18
    • 1970-01-01
    • 2020-08-16
    • 2010-09-07
    • 2010-12-09
    • 2021-12-19
    • 2014-03-31
    相关资源
    最近更新 更多