Size: a a a

React: русскоязычное сообщество

2020 May 08

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
👍
источник

ЕИ

Евгений Ишимов... in React: русскоязычное сообщество
буду дальше сам разбираться...
источник
2020 May 09

LL

Lev Lunev in React: русскоязычное сообщество
Ребятки, всем привет!

Вопрос по редуксу. Предположим, у меня в стейте хранится список сложных объектов. И так же хранится айдюк "текущего" объекта.

Как можно реализовать метод для получения самого объекта, фильтруя все объекты по айдюку? Типа отдельный законнекченный класс какой-нибудь написать?

Или проще вместо айдюка тупо объект хранить? (типа, я так понимаю, память лишнюю это не будет занимать)
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Хранить объекты не в Array-е, а в словаре:

{
 [id]: { id },
 [id1]: { id: id1 },
 [id2]: { id: id2 }
}
источник

LL

Lev Lunev in React: русскоязычное сообщество
А вот так норм?
источник

LL

Lev Lunev in React: русскоязычное сообщество
Lev Lunev
А вот так норм?
Тут как раз ссылочка типа
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Если массивом храните, то нужно делать каждый раз .find.
источник

LL

Lev Lunev in React: русскоязычное сообщество
Не, я имею ввиду, я уже буду не по id их искать, а у меня будет просто ссылка на текущий объект
источник

LL

Lev Lunev in React: русскоязычное сообщество
Юра Чеботаев
Если массивом храните, то нужно делать каждый раз .find.
И дикт быстрее работает в этом плане, да, согласен
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
В словаре доступ за O(1), а с .find худший случай за O(all_objects.length).
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Lev Lunev
Не, я имею ввиду, я уже буду не по id их искать, а у меня будет просто ссылка на текущий объект
Это как удобней.
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Бэст практайсом считается хранить айдишник текстом, а потом в селекторе по нему получать текущий уже объект.
источник

LL

Lev Lunev in React: русскоязычное сообщество
Хорошо, спасибо!

А вообще, у стора можно как-нибудь методы запилить?

Типа store.getCurrentObject() который внутри будет сам пробегаться и искать? Чтоб код не дублировать
источник

LL

Lev Lunev in React: русскоязычное сообщество
Спасибо большое, Юрий!!!
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Запретить никто не может, но я не видел, чтобы кто-то так делал.
источник

LL

Lev Lunev in React: русскоязычное сообщество
А, понял... Хорошо, благодарю))
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
Если вы работаете с редуксом, то вам еще нужен будет reselect.
источник

ЮЧ

Юра Чеботаев... in React: русскоязычное сообщество
👍
источник

LL

Lev Lunev in React: русскоязычное сообщество
Юра Чеботаев
Если вы работаете с редуксом, то вам еще нужен будет reselect.
Вот за это спасибо! Понял, чё это. Пошёл читать либу)
источник

LL

Lev Lunev in React: русскоязычное сообщество
Юра Чеботаев
Если вы работаете с редуксом, то вам еще нужен будет reselect.
Спасибо большое ещё раз!!!! Хз, почему я не юзал это раньше))))))) Пару раз слышал про него, но так руки и не дошли :D
источник