【发布时间】:2019-09-11 08:49:37
【问题描述】:
我正在尝试设置我的 firebase 规则,因此我正在尝试按时间对消息进行排序,但我未能代表路径。
我的数据:
Firebase 规则:
{
"rules": {
".read": true,
".write": true,
"conversations": {
"messages":{
".indexOn": ["time"]
}
}
}
}
component.ts (Angular 5) (Angularfire 5.0.0-rc.4)
到目前为止,我一直在客户端订购我的消息,并试图在后端找到如何做到这一点。
getMessages(id) {
this.db.list('/conversations/' + id+ '/messages')
//, ref => ref.orderByChild('time')
.valueChanges()
.pipe(
tap(messages => {
messages.sort(
(obj1: any, obj2: any) => {
if (obj1.time > obj2.time) {
return 1;
}
if (obj1.time < obj2.time) {
return -1;
}
return 0;
}
)
})
)
.subscribe(
(messages: any) => {
this.messages = messages;
console.log("RECUUUUU", messages);
this.scrollToBottom();
},
(error)=>{
console.log("error getMessages");
}
)
}
【问题讨论】:
标签: javascript firebase firebase-realtime-database firebase-security