我在angularfire上遇到了同步数组的问题。我使用firebase 2.3.1进行了angularfire 1.1.3。 我有一个查询
var arr = $firebaseArray(ref.limitToFirst(5));
直到现在我所看到的行为是,当我打电话时
arr.$remove(0)
查询返回的下一个对象会自动加载到synchronized数组中。这实质上使得数组成为查询响应的滑动窗口 - 它总是具有相同数量的元素。
自上周以来,这种行为似乎发生了变化,我得到两种不同的情况:
1:arr
确实加载了5个项目,但在调用arr.$remove
五次之后,数组为空 - 这在JavaScript数组上是正常行为,但不是我之前在AngularFire同步阵列上看到的内容。
2:或arr
已加载但随后消失,即在代码中:
arr.$loaded(function(){
\\ break
})
如果我中断了回调,arr
确实有五个项目,与Firebase上的数据相对应,但在Angular摘要循环结束时,arr
是一个空数组。
演示: This plunker 显示行为1
所以我的问题是:
$loaded
上有项目但最后是空的?)更新
似乎行为2发生在行为1之后 - 更确切地说:在获得空的synchronized数组之后,如果我重新加载页面,那么我在arr.$loaded
的回调中得到一个非空数组,但是在一个空数组中结束。
这是否意味着firebase本身会被卡住"?
我会尝试在plunker中重现它。
答案 0 :(得分:0)
现在应该修复。很抱歉给您带来不便!