Быстрый способ получить уникальный список атрибутов из списка объектов - PullRequest
3 голосов
/ 20 апреля 2020

У меня есть список объектов с большим количеством элементов Test:

Test:{name:'', creator:''}

Требуется извлечь из этого списка уникальный список создателей. Я попытался:

const creators = Array.from(new Set(tests.map(t=>t.creator))

Это работает нормально, но из-за быстрых изменений, я должен вызывать это снова и снова. Таким образом, это занимает больше времени и отстает от пользовательского интерфейса. Как построить этот массив более эффективно, чем текущая реализация?

РЕДАКТИРОВАТЬ:

Контекстная информация:

Требуется уникальный массив элементов ( не установите ) из-за рендеринга в пользовательском интерфейсе по

tests.map(test=><Test data={test}/>)

1 Ответ

0 голосов
/ 20 апреля 2020

Вы можете использовать функцию библиотеки loda sh "uniqBy" для решения этой проблемы.

Документация: https://lodash.com/docs#uniqBy

Пример: -

_.uniqBy(data, function (e) {
  return e.creator;
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...