【问题标题】:How to send a Hashmap as a field inside a document?如何将 Hashmap 作为文档中的字段发送?
【发布时间】:2020-07-30 17:59:33
【问题描述】:

我在 JS 中生成了一个地图dataMap,它在控制台上如下所示:

dataMap: { val1 → "50", item1 → "shoe", val2 → "20", item2 → "book" }

当我尝试将其写入云 Firestore 时

        db.collection("readDynamic").add({
            name: 'Alex',
            items: dataMap,
            age: '24'
        })
        .then(function (querySnapshot) {
            if (querySnapshot.size) {
                querySnapshot.forEach(function (data) {
                    console.log("Document successfully updated!");
                    console.log(data.id, " => ", data.data());
                });

            }
        })
        .catch(function(error){
            console.log("error!", error);
        })

报错:

未捕获的 FirebaseError:使用无效数据调用函数 DocumentReference.set()。不支持的字段值:自定义 Map 对象

我做错了什么?

【问题讨论】:

    标签: javascript firebase google-cloud-firestore hashmap


    【解决方案1】:

    Firestore SDK 不支持您用于dataMap 的对象。它不接受 ES6 Map 类型的对象。您必须先将其转换为常规 JavaScript 对象。例如,这应该有效:

    const dataMap = {
        val1: 50,
        item1: "shoe",
        val2: "20",
        item2: "book"
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-28
      • 1970-01-01
      • 2019-08-14
      • 1970-01-01
      • 2019-07-08
      相关资源
      最近更新 更多