Firebase,Firego和orderBy

我正在尝试使用Golang和Firego从Firebase获取时间戳排序的元素列表.

文档建议:

var v map[string]interface{}
if err := f.StartAt("a").EndAt("c").LimitToFirst(8).OrderBy("field").Value(&v); err != nil {
    log.Fatal(err)
}
fmt.Printf("%s\n", v)

我必须遗漏一些完全明显的东西,但不是无序的吗?当我循环遍历地图时(对于密钥,val:=范围v),这些值的顺序与它们在对Firebase的调用响应中发送的顺序不同,因为访问顺序是undefined.

我错过了什么?谢谢

最佳答案 结果地图将是无序的,因为它是地图,但原始结果(限于前8)将在限制之前订购,因此订单可能非常重要.

我同意地图对于这种结果来说是一个糟糕的类型,他们可能正在使用它,因为结果以json的形式返回(虽然它确实有一个顺序,不像go的地图).他们应该返回一系列结果以保持秩序.

点赞