Javascript 从firebase获取同步阵列

Javascript 从firebase获取同步阵列,javascript,firebase,Javascript,Firebase,我正在尝试获取firebase数据库的最后100个条目,并动态更新该数组。 我在控制台中遇到的错误如下: 204未捕获类型错误:ref.on不是函数 我不知道这意味着什么 代码 function getSynchronizedArray(firebaseRef) { var list = []; syncChanges(list, firebaseRef); return list; } function syncChanges(list, ref) { ref.on('chi

我正在尝试获取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');
函数GetSynchronizeArray(firebaseRef){ var列表=[]; 同步更改(列表,firebaseRef); 退货清单; } 功能更改(列表,参考){ 参考on('child_added',function_add(snap,prevChild)){ var data=snap.val(); data.$id=snap.key(); var pos=位置后(列表,前置子项); 拼接列表(位置,0,数据); }); } 功能位置(列表、键){ for(变量i=0,len=list.length;i
非常感谢大家的帮助。

在您的代码中,ref只是一个字符串,而不是firebase引用,因此您必须在代码中添加如下内容:

function syncChanges(list, ref) {
  var Fref = new Firebase(ref);
  Fref.on('child_added', function _add(snap, prevChild) {

查看firebase以了解更多信息。

在您的代码中,ref只是一个字符串,而不是firebase引用,因此您必须在代码中添加如下内容:

function syncChanges(list, ref) {
  var Fref = new Firebase(ref);
  Fref.on('child_added', function _add(snap, prevChild) {

查看firebase以了解更多信息。

这里的代码最后一部分似乎是cur off?有些东西被切断了,但这并不重要,不起作用的部分实际上是填充了数组。您正在调用
getSynchronizeArray('s)https://MYLINK.firebaseio.com/SOMETHING');
只有一个参数,但它需要两个参数:
syncChanges(list,ref)
这里的代码的最后一部分似乎是cur off?有些东西被切断了,但这并不重要,不起作用的部分实际上是填充数组。您正在调用
getSynchronizedArray('https://MYLINK.firebaseio.com/SOMETHING“);
只有一个参数,但它需要两个参数:
syncChanges(list,ref)
OK,它现在可以工作,但不能完全实现我想要的,它现在可以工作,但不能完全实现我想要的