React - как добавить локальные данные к данным из REST api?

Моя страница response js извлекает данные из службы REST и использует react-query для их извлечения и хранения. Данные представляют собой список объектов.

Я хочу ДОБАВИТЬ одну или две собственные дополнительные переменные к каждому объекту в этом списке, которые будут только на стороне реакции и не будут возвращаться на сторону сервера REST.

Каждый объект в списке получит дополнительную логическую переменную expanded, которая укажет, следует ли развернуть этот объект на странице или нет.

Как бы вы добавили такую ​​переменную в список с сервера? Не могли бы вы изменить сам список и, возможно, использовать immutability-helper? Или вы бы создали отдельный список логических флагов и указателей на другой список?


person Jon Th    schedule 10.12.2020    source источник


Ответы (1)


Вы можете изменить список, как если бы вы не отправляли данные на сервер после его получения. Это легко сделать с помощью оператора распространения.

const newList = oldarrOfObj.map(_o=>{
  return {..._o, expanded: true}
})

предположим, что вы внесли некоторые изменения в arr и хотите уведомить сервер.

const oldList = newList.map(_o=>{
  delete _o.expanded
  return _o;
})
person JustRaman    schedule 10.12.2020
comment
Спасибо. Будет ли ваш первый пример отображать весь список на странице? Вот почему я подумывал изучить immutability-helper. Раньше с этим не работал. - person Jon Th; 10.12.2020
comment
Обновил ответ. используйте переменную newList для отображения списка на странице. - person JustRaman; 10.12.2020