Я хочу создать единый массив объектов из ngrx
selectors
.
Возникающая проблема заключается в том, что он создает массив объектов только для последнего элемента массива и не для всех.
МОЙ КОД:
this.userSelectorsService.usersFriends.subscribe(users => {
users.forEach(user =>
combineLatest([this.chatSelectorsService.getFriendLatestMessageById(user.id), this.chatSelectorsService.getTotalUnreadMessagesFriendById(user.id)])
.pipe(takeWhile(chatSelectors => chatSelectors[1] > 0))
.subscribe(chatSelectors => {
console.log(chatSelectors);
this.lastMessages$.next({
user,
latestMessage: {
...chatSelectors[0],
isNewLastMessage: user.isClicked,
},
});
})
);
});
РЕЗУЛЬТАТ:
Что я использую sh:
[
{
"id":"1",
"text":"In a world where changes are taking place quickly, the only strategy that will guarantee failure is to not take risks.",
"time":"10:20",
"isMain":false,
"isRead":false,
"isNewLastMessage":false
},
{
"id":"2",
"text":"tst",
"time":"10:20",
"isMain":false,
"isRead":false,
"isNewLastMessage":false
},
{
"id":"3",
"text":"tst 3",
"time":"10:20",
"isMain":false,
"isRead":false,
"isNewLastMessage":false
}
]