我基本上要做到这一点:如何在Firebase中订购儿童时按优先顺序排序?
var ref = new Firebase("[myapp].firebaseio.com");
var things = ref.child("things");
var thingsQuery = things.orderByPriority().orderByChild("owner").equalTo("[ownerKey]")
var angularReadyThings = $firebaseArray(thingsQuery);
我使用火力地堡的查询能力orderByChild()和equalTo()来获取数据的一个子集,并从该查询创建$ firebaseArray显示的一部分特定节点下的东西列表。用户可以通过拖放列表来设置每个项目的$优先级,并且我可以正确保存优先级,但是数据不是按照优先级(我认为是有意义的)重新排序。我不能像orderByChild()一样使用orderByPriority(),就像我上面在第3行(不支持多个orderBys)一样。在我的ng-repeat上使用orderBy:'$ priority'过滤器(我正在使用angular)工作,直到我拖放列表为止,此时这些项目会恢复到它们的检索(无序)状态。
有没有一种方法可以使用orderByChild()和equalTo()并获得按Firebase优先级排序的结果?
那么'onChildMoved'就会过时? –