Как преобразовать значения (true или false в Yes или No) в массиве с объектами с помощью RXJS? - PullRequest
0 голосов
/ 02 мая 2018

Я резервирую следующие (пример) данные из Firebase:

[
  {
    'customer': 'John',
    'active': true
  },
  {
    'customer': 'Doe',
    'active': true
  },
  {
    'customer': 'Frenz',
    'active': false
  }
];

В моей таблице я хочу показать значение как «Да» или «Нет». Я использую Angular, поэтому я хочу изменить значения при подписке на te наблюдаемые.

Пока что я думаю, что должен использовать оператор карты, например: Преобразование наблюдаемого с помощью .map Но этот пример добавляет значение, я хочу изменить каждое значение в каждом объекте.

Тот же пример мне очень поможет! Спасибо заранее.

1 Ответ

0 голосов
/ 02 мая 2018

Вы можете использовать map (я предполагаю, что вы используете RxJS 5.5):

source
  .pipe(
    map(array => array.map(obj => {
      obj.active = obj.active ? 'Yes' : 'No';
      return obj;
    })),
  )

Я знаю, странно использовать два map s, но внешний из RxJS, а внутренний - просто Array.map, который обновляет каждый объект.

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