node.js - 如何在firestore db中使用破折号访问地图类型变量
问题描述
我有一个 Firestore 集合,如下所示:
user (collection)
userUID (Document)
token = "123"
planet (Map)
pl34-7ft (Map)
planetName = "axiom"
planetID = "pl34-7ft"
island = "amrs"
我正在尝试运行查询以查找其帐户中具有行星“公理”的所有用户。
当我运行以下代码时:
var ref = await firestoreDb.collection('user').where("planet.pl34-7ft.planetName", "==", "axiom").get().then(snapshot => { ... }
我收到以下错误:
字段“planet.pl34-7ft.planetName”不是有效的 Firestore 字段路径。
当我将“p134-7ft”更改为没有破折号的名称时,即“malibu”,我没有收到错误消息。
我猜firestore需要一种特殊的方式来处理“破折号”字符?
有谁知道如何使用破折号访问字段路径?
谢谢!
解决方案
请尝试使用方括号 []: where([planet.pl34-7ft.planetName], "==", "axiom")
您也可以看到这篇文章: Firebase, variable as key name
运气!
推荐阅读
- python-2.7 - 查找到树中任何节点的距离
- laravel - 通过 JWTAuth 设置用户rainlab 上次登录时间戳
- modx - 块不保存自闭合标签。有什么办法解决吗?
- css - 绝对定位元素扩展父元素
- regex - How can I remove the email in the end of the url
- python - AWS Glue - Pick Dynamic File
- c# - 对象链
- swift - 重新注册一个 AnnotationView
- spring - Spring JPA CrudRepository save(Entity) 在 id 字段中返回 0
- reactjs - Redux-dev-tool 中的更改意味着 Redux 状态更改良好?