Firebase AngularFire:使用';订单';属性以轻松检索行中的子订单

Firebase AngularFire:使用';订单';属性以轻松检索行中的子订单,firebase,firebase-realtime-database,angularfire,Firebase,Firebase Realtime Database,Angularfire,对于我的等待列表应用程序,我使用$firebaseArray来同步来宾队列。来宾阵列按等待时间排序(即来宾子级添加到$firebaseArray后的时间) 每位客人都应该能够看到自己排队的顺序,但不能看到其他等待的客人。因此,对于列表中的每个来宾,我希望将其当前顺序作为一个属性保持一致,例如,orderInLine 例如: guests: { guest1: { name: "John", orderInLine: 1 }, guest2

对于我的等待列表应用程序,我使用
$firebaseArray
来同步来宾队列。来宾阵列按等待时间排序(即来宾子级添加到
$firebaseArray
后的时间)

每位客人都应该能够看到自己排队的顺序,但不能看到其他等待的客人。因此,对于列表中的每个来宾,我希望将其当前顺序作为一个属性保持一致,例如,
orderInLine

例如:

guests: {
    guest1: {
        name: "John",
        orderInLine: 1
    },
    guest2 {
        name: "Jane",
        orderInLine: 2
    }
    ...
}
我当前的解决方法是循环列表,直到找到匹配项,并使用循环索引作为行中的位置,沿:

// Find place in line for selected guest
for (var i = 0; i < guests.length; i++) {
    if (guests[i] === selectedGuest) {
        selectedGuest.orderInLine = i + 1;
    }
}
//为所选来宾在行中查找位置
对于(变量i=0;i
一个问题是,我需要加载此操作的所有来宾

我假设/希望解决方案是
$extend
扩展
$firebaseArray
,并且对于每个
$$added
$$removed
$$moved
都要更新每个孩子的
orderInLine
属性,但我还没有找到一个好的实现方法

如能帮助解决此问题,我们将不胜感激。这是一个