【发布时间】:2020-01-15 15:01:09
【问题描述】:
我正在使用 firebase,我想按 quoteID 排序我的结果。但是 orderbychild 没有按预期返回列表中的第一项或最后一项。
this.props.firebase.db.ref('quotes').orderByChild("quoteId").limitToFirst(1).once("value", snapshot => {
const entry = snapshot.val();
console.log(entry);
})
我的数据结构如下:
{
"1ec658d2-a7cb-45b8-8d9b-9c2a6783365d" : {
"dateCreated" : "2019-12-02T16:06:50+01:00",
"owner" : "DVRVSpeOXQV6wAmHAdpAe6iPQ5i2",
"quoteID" : "200115001",
"timeStamp" : 2075985276
},
"3e95a6ba-df85-4dbb-97b0-cf36df068bc1" : {
"dateCreated" : "2019-09-27T09:17:58+02:00",
"owner" : "xZBFCq4ho3V2G8dZTvK7RjsnTr43",
"quoteID" : "200115002",
"timeStamp" : 1
},
"d95d1f32-804b-4625-8f7e-e0bfb4f032e6" : {
"dateCreated" : "2019-12-10T14:39:40+01:00",
"projectName" : "testPropject timestamp2",
"quoteID" : "191210000",
"timeStamp" : 1575985180
}
}
我得到作为第一个单项返回的 qouteID '200115001' 的条目。我不明白为什么不按文档中所述的字典顺序首先返回“191210000”
https://firebase.google.com/docs/database/web/lists-of-data#data-order
【问题讨论】:
-
您查询的是“orderByChild("quoteId") 而不是“quoteID”。它可能区分大小写
标签: javascript firebase ecmascript-6