正在从firebase获取同步数组
Getting synced array from firebase
我试图获取firebase数据库的最后100个条目,并让该数组动态更新。我在控制台中得到的错误是:
204未捕获类型错误:ref.on不是函数
我不知道这意味着什么。
代码
function getSynchronizedArray(firebaseRef) {
var list = [];
syncChanges(list, firebaseRef);
return list;
}
function syncChanges(list, ref) {
ref.on('child_added', function _add(snap, prevChild) {
var data = snap.val();
data.$id = snap.key();
var pos = positionAfter(list, prevChild);
list.splice(pos, 0, data);
});
}
function positionFor(list, key) {
for(var i = 0, len = list.length; i < len; i++) {
if( list[i].$id === key ) {
return i;
}
}
return -1;
}
function positionAfter(list, prevChild) {
if( prevChild === null ) {
return 0;
}
else {
var i = positionFor(list, prevChild);
if( i === -1 ) {
return list.length;
}
else {
return i+1;
}
}
}
$(function () {
var data = [], totalPoints = 100;
data = getSynchronizedArray('https://MYLINK.firebaseio.com/SOMETHING');
非常感谢大家的帮助。
在您的代码中,ref只是一个字符串,而不是firebase引用,因此您必须在代码中添加这样的内容:
function syncChanges(list, ref) {
var Fref = new Firebase(ref);
Fref.on('child_added', function _add(snap, prevChild) {
请查看firebase文档以获取有关此方面的更多信息。
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 将数组从PHP传递到Javascript
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 在函数中添加数组元素的数值
- 父数组中每个值的 Angular 指令保持同步
- 将 JSON 文件读取到对象的全局数组中 - 范围和同步问题
- 从回调填充本地数组:同步问题
- 将数组与已排序的Backbone.Collection同步
- 在异步代码块中处理的多个ajax延迟调用的数组,后面是同步的最终代码块
- Javascript同步对象与数组
- 对一个巨大的数组进行并行或同步迭代会更快吗?
- 如何在多个控制器中过滤和同步对象数组
- 在排序函数中同步2个或更多的数组