Firebase:。优先级值 如何检查优先级值是否在我的“Forge”中 根据文档,较小的。优先级值在较大的。优先级值之前。如果我使用“自历元起秒数”作为优先级,并且我希望最新的子项显示在顶部,我是否应该将“优先级”设置为1/秒

Firebase:。优先级值 如何检查优先级值是否在我的“Forge”中 根据文档,较小的。优先级值在较大的。优先级值之前。如果我使用“自历元起秒数”作为优先级,并且我希望最新的子项显示在顶部,我是否应该将“优先级”设置为1/秒,firebase,Firebase,其次是优先考虑数字的儿童。它们按优先级(从小到大)进行数字排序,然后按名称(从a到z)进行字典排序 通过实验,我确定如果我将.priority设置为java.util.Date#getTime,最年长的孩子会在我的Forge中显示在顶部,但最新的孩子会在使用prevChildName进行排名时在我的Javascript on()中显示在顶部。为什么会这样 目前在Forge中无法查看实际的优先级值,但子级将被正确排序 如果您希望按逆时间顺序对项目进行排序,我建议您只需将优先级设置为正常的时间戳(

其次是优先考虑数字的儿童。它们按优先级(从小到大)进行数字排序,然后按名称(从a到z)进行字典排序

  • 通过实验,我确定如果我将.priority设置为java.util.Date#getTime,最年长的孩子会在我的Forge中显示在顶部,但最新的孩子会在使用prevChildName进行排名时在我的Javascript on()中显示在顶部。为什么会这样

目前在Forge中无法查看实际的优先级值,但子级将被正确排序


如果您希望按逆时间顺序对项目进行排序,我建议您只需将优先级设置为正常的时间戳(或者使用push——它会自动排序)。然后,您可以简单地向后渲染它们,以实现所需的相反顺序。例如,您可以在第一个元素之前插入新消息,而不是将新消息添加到应用程序列表的底部。

您可以通过从Forge“导出json”在json中看到
.priority

使用

snapshot.getPriority();
更多

snapshot.exportVal()

将DataSnapshot的全部内容导出为Javascript 对象这与val()类似,只是优先级信息是 包括(如果可用),使其适合备份您的数据

导出格式是带有“.priority”条目的Javascript对象 添加到任何具有优先级的对象。对于基本值 (字符串、数字或布尔值)具有优先级时,值将被包装 在具有“.value”和“.priority”属性的对象中。就 如果原语值没有优先级,则返回原语值


来源:

它在Forge中不可用,但您可以从JSON格式中看到它:


https://YOURAPP.firebaseio.com/.json?print=pretty&format=export

对于递减时间,请使用负优先级,如
-1*Date.now()