Size: a a a

JavaScript.Ninja

2021 June 03

N

Nikita in JavaScript.Ninja
а, типа в селекторе нельзя просто фильтровать переменную стейта, ибо я мутирую её в сторе?
источник

N

Nikita in JavaScript.Ninja
ну, если это массив
источник

DZ

D Z in JavaScript.Ninja
Я там ссылку на доку редакса скидывал, они нормально объясняют как правильно делать
источник

N

Nikita in JavaScript.Ninja
понял
источник

DZ

D Z in JavaScript.Ninja
Если вы мутируете стору, то редакс вообще не поймет, что что-то изменилось, и не начнёт перерасчёт селекторов
источник

N

Nikita in JavaScript.Ninja
я имею виду, что если я это делаю в селекторе
источник

N

Nikita in JavaScript.Ninja
там тоже надо делать копию массива, перед фильтрацией?
источник

N

Nikita in JavaScript.Ninja
если нет, то нет никакой проблемы кажется
источник

DZ

D Z in JavaScript.Ninja
Да, тк вы можете случайно изменить содержимое сторы
источник

N

Nikita in JavaScript.Ninja
всё, теперь всё сложилось
источник

DZ

D Z in JavaScript.Ninja
Если что, filter не мутирует исходный массив
источник

N

Nikita in JavaScript.Ninja
ну я понял, что если пишу какую-то матирующую логику в селекторе, то она просто будет каждый раз перендеривать компонент при изменении сторы, если не опишу опциональную функцию для сравнения
источник

N

Nikita in JavaScript.Ninja
так что приводить к нужному представлению уже внутри компонента не худшая идея
источник

DZ

D Z in JavaScript.Ninja
Эта проблема решается с помощью reselect
источник

N

Nikita in JavaScript.Ninja
почитаю
источник

DZ

D Z in JavaScript.Ninja
В целом да
источник

DZ

D Z in JavaScript.Ninja
Даже хорошая
источник

N

Nikita in JavaScript.Ninja
а в паре слов если, то reselect реализует какую-то более глубокую логику сравнения?
источник

N

Nikita in JavaScript.Ninja
не дорого?
источник

DZ

D Z in JavaScript.Ninja
С ним у вас не будет при каждом изменение стейта запускаться фильтр, а следовательно создаваться новый массив
источник