Возврат нового значения с Object.assign с комбинированным тестом в rxjs - PullRequest
0 голосов
/ 11 марта 2020

Поэтому я пытаюсь добавить дополнительное свойство к объектам в массиве itemAlarms observables. Это один объект в массиве itemsAlarm:

{
    "id": "1",
    "healthType": "warning",
    "createdOn": "2020-03-11T05:47:14.38Z",
    "module": "00100",
    "version": "0",
    "index": 14
}

Я пытаюсь преобразовать его, чтобы добавить это дополнительное свойство в каждый объект массива:

{
    "id": "1",
    "itemsTypeId": "23",
    "healthType": "warning",
    "createdOn": "2020-03-11T05:47:14.38Z",
    "module": "00100",
    "version": "0",
    "index": 14
}

Обе эти наблюдаемые имеют Идентификатор, который является тем же самым, и именно так я нахожу itemTypeId, чтобы объединить его с объектами itemAlarms. У items есть id, а itemsAlarms имеет itemId с отношениями primary и fk.

  this.items$ = this.itemsService.getEntities();
    this.itemsAlarms$ = this.itemsAlarmsEntityService.getEntities();

this.itemsAlarms$ = combineLatest([this.items$, this.itemsAlarms$]).pipe(
  map(([items, itemsAlarms]) => {
    itemsAlarms.forEach(alarm =>
      Object.assign({ itemId: items.find(item => item.id === alarm.Itemid).itemTypeId}, itemsAlarms)
    );
    return itemsAlarms;
  })
);

Я думал, что itemsAlarm будет новым переданным массивом, но это точный результат оригинала. Я чувствую, что делаю что-то не так.

Это пример того, что я пытаюсь сделать, но без почтового индекса, потому что я продолжаю получать сообщения, он устарел: http://jsbin.com/jiqofihoko/edit?js, консоль

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...