Я пытаюсь сначала назначить Observable, а затем подписаться на его значения. Этот код:
//assign observable
this.messagesDataSource$ = this.messageService.getMessagesDataSource(this.messagesContainerTitle);
//subscribe to its values
this.messagesDataSource$.subscribe((messages: Message[]) => {
this.messagesArray = messages;
});
работает нормально, но я не думаю, что это хороший подход. Я пытался запустить этот процесс с pipe (), но все равно, если массив данных подписки не будет назначен. Моя третья идея состояла в том, чтобы использовать карту
this.messagesDataSource$ =
this.messageService.getMessagesDataSource(this.messagesContainerTitle)
.map(messages => this.messagesArray = messages)
но все равно нет результата. Можете ли вы дать мне какой-нибудь совет, как назначить наблюдаемые и затем получить их данные в одном потоке?
EDIT
map () в трубе там тоже не срабатывает:
this.messagesDataSource$ =
this.messageService.getMessagesDataSource(this.messagesContainerTitle)
.pipe(
map((messages) => {
console.log('in pipe');
return messages
}))