将不存在的对象添加到 Firebase 数组中
Adding objects to Firebase arrays that don't exist
我正在尝试在Firebase中创建这种数据结构。
"updates": {
"place_id_1": [
"update1": {},
"update2": {}
],
"place_id_2": [
"update1": {},
"update2": {}
]
}
这是我正在使用的代码,但TypeError: updates.$child is not a function(…)
出现错误.不知道问题是什么。如果您尝试添加对象/路径时不存在,Firebase 是否会创建这些对象/路径?
var ref = new Firebase(FirebaseConfig.baseUrl + "/updates");
var updates = $firebaseObject(ref);
updates.$child(update.place_id).$push(update); // will this work?
>$child()
和$push
不是AngularFire中的方法。我强烈建议您阅读AngularFire的快速入门和分步指南。在文档中花费的几个小时可以防止这里出现数百个问题。
要创建您正在寻找的结构,您可以使用AngularFire,但您不需要它。
使用 Firebase JavaScript SDK:
var ref = new Firebase(FirebaseConfig.baseUrl + "/updates");
var place1 = ref.push();
place1.push({ key: 'value1' });
place1.push({ key: 'value2' });
var place2 = ref.push();
place2.push({ key: 'value3' });
place2.push({ key: 'value4' });
使用AngularFire:
var ref = new Firebase(FirebaseConfig.baseUrl + "/updates");
var place1 = $firebaseArray(ref.push());
place1.$add({ key: 'value1' });
place1.$add({ key: 'value2' });
var place2 = $firebaseArray(ref.push());
place2.$add({ key: 'value3' });
place2.$add({ key: 'value4' });
请注意,使用AngularFire读取这样的嵌套数组会很棘手。这也是 Firebase 文档建议不要嵌套数组的原因之一。
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 迭代和修改Firebase数组会导致未定义
- 是否可以禁用Firebase到本机数组的自动转换
- 将不存在的对象添加到 Firebase 数组中
- 如何通过Firebase数据库中的AngularJS在点击时获取数组元素的唯一ID
- 将Firebase$asArray()转换为Javascript数组
- 将Firebase中的数据填充到我的空数组中
- 试图将数组添加到firebase,但由于nodejs没有异步特性而出现问题
- 检查数组长度的Firebase安全规则
- 聚合物:firebase集合总是返回空数组
- 获取由firebase返回的数组的长度
- 如何将数组更新到firebase
- 使用Firebase存储数组
- 基于已知键数组向Firebase DB发出批处理请求的最有效方法是什么?
- 根据对象在Firebase中的数组位置检索对象
- 在JavaScript中将Firebase数据存储到数组中
- 如何在Firebase数组中使用ngTable分页
- 如何将按钮函数绑定到数组中的相应项- AJAX, Firebase
- Firebase -对象vs数组和返回.key()