各メッセージに関連するすべての情報(特に各メッセージの著者名)を含むチャットに含まれるメッセージのリストを表示したい。 だから私は、メッセージの配列の観測を返し、次の機能があります。配列の各項目に基づいて観測値を呼び出し、配列を返す
getLastMessagesOfEvent(eventId: string, limitTo?: number): Observable<any> {
console.log('MessageService#getLastMessagesOfEvent - Event ID: eventId');
let chatIdPath = `/${this.authService.getCurrentUserCompany()}/events/${eventId}/chat`;
return this.af.object(chatIdPath)
.mergeMap(chat => {
let chatId = chat.$value
console.log('chatId ', chatId);
let chatPath = `/${this.authService.getCurrentUserCompany()}/eventChats/${chatId}/messages`;
let query: any = {};
query.orderByChild = 'timestamp';
if (limitTo) query.limitToLast = limitTo;
return this.af.list(chatPath, {query: query});
})
}
メッセージがcontent
とauthor_uid
が含まれています。
メッセージの配列を返す前に、各メッセージについて、最初に(author_uid
に基づいて、そして関数getUserInfo(author_uid): Observable<any>
という名前で)作成者情報を取得してください。
最後にメッセージの配列を返したいと思います。メッセージごとにcontent
とauthor_info
があります。
どうすればいいですか?