firebase - Firebase database().ref() 不存在的路径
问题描述
在 firebase 中,我的应用程序将一直创建嵌套数据。我的问题是我是否必须先检查密钥是否存在才能引用它,或者我可以...
const ref = firebase.database().ref("dataTree/" + childVar1 + "/" + childVar2);
ref.push({data: "this is data"});
它会为我创建嵌套结构吗?IE :
{
"dataTree": {
"notChildVar1": {
"someChildName": {
"data": "test"
}
}
"alsoNotChildVar1": {
"someChildName": {
"data": "test"
}
}
}
}
应该成为...
{
"dataTree": {
"notChildVar1": {
"someChildName": {
"data": "test"
}
}
"alsoNotChildVar1": {
"someChildName": {
"data": "test"
}
}
"childVar1": {
"childVar2": {
"data": "test"
}
}
}
}
如果上面的代码会返回一个错误,我该怎么做才能测试一个键是否存在,如果它不存在就添加它,然后在里面推送一些东西?
解决方案
也许您可以尝试创建完整内容childVar1
并直接插入到您的数据库中,包括childVar2: {data: test}
(我认为您正在使用 RealtimeDatabase)。
const ref = firebase.database().ref("dataTree/" + childVar1);
ref.push(
"childVar2": {
"data": "this is data"
}
);
推荐阅读
- c# - 如何处理 bitmap.Save(Response.OutputStream, ImageFormat.Jpeg) 的临时屏幕渲染?
- reactjs - fs.readdirSync 不是一个函数 - electron + react.js
- c# - 如何在不创建类的情况下将 Json 字符串反序列化为 Type
- java - 编译时间常数如何在java内部工作
- cypress - 赛普拉斯在 Windows 凭据登录中发送特殊字符
- java - 即使有数据也无法从 sqlite 获取数据(主要发生在 Android 9 设备中)
- php - [Route:havence.automail.delete] [URI:havence/automail/{automail}] 缺少必需的参数
- linux - 无法从linux命令发送邮件
- hyperledger - 澄清 Hyperledger-indy 和 soverin 基金会项目?
- javascript - Android Chrome 中的 Web Speech API 问题