Size: a a a

React — русскоговорящее сообщество

2020 July 14

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
А создавать там свое что-то
источник

K

Kirill in React — русскоговорящее сообщество
самое интересное что в доке нет описания к useShallowCompareSelector, как будто все очевидно
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
Sm•ok 😈✔️
Например селектор с фильтром, хз
Ну вот такой кейс бывает ещё
источник

ei

export default - зло... in React — русскоговорящее сообщество
export default - зло is the side effect
useSelector(state => ({ something: state.something }))
Вот это будет ререндерить компонент при любом обновлении стейта
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
По сути как useMemo
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
Чтобы каждый раз новую ссылку на объект не давать
источник

ei

export default - зло... in React — русскоговорящее сообщество
С каким фильтром
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
export default - зло is the side effect
С каким фильтром
const newOrders = useSelector(state => state.orders.filter....)
источник

ei

export default - зло... in React — русскоговорящее сообщество
Зачем тогда селектор если он не помогает? Ты каждый раз заново фильтруешь
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
export default - зло is the side effect
Зачем тогда селектор если он не помогает? Ты каждый раз заново фильтруешь
Это не заменит юсмемо?
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
Только селектор такой
источник

ei

export default - зло... in React — русскоговорящее сообщество
Нет, мемо не перевычисляет пока зависимости не изменятся
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
Придется все таки снизу пилить его
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
export default - зло is the side effect
Нет, мемо не перевычисляет пока зависимости не изменятся
Я думал селектор вернёт то, что вернул до этого
источник

S

Sm•ok 😈✔️ in React — русскоговорящее сообщество
Если депс не изменились
источник

ei

export default - зло... in React — русскоговорящее сообщество
Sm•ok 😈✔️
Я думал селектор вернёт то, что вернул до этого
Насколько я помню, когда стейт изменится, функции из useSelector'ов пойдут выполняться, и если где-то значение не совпадает при ===, форсится ререндер
источник

ei

export default - зло... in React — русскоговорящее сообщество
С шалоу компейр отличие в том что не просто === сравнение, а на 1 уровень вложенности
источник

ei

export default - зло... in React — русскоговорящее сообщество
export default - зло is the side effect
Насколько я помню, когда стейт изменится, функции из useSelector'ов пойдут выполняться, и если где-то значение не совпадает при ===, форсится ререндер
То есть вызов всего что внутри функции не отменяется, это как раз один из пунктов который реселект решает
источник

ei

export default - зло... in React — русскоговорящее сообщество
Правда я прямо точно не помню как оно работает, например если в 1 компоненте несколько useSelector
источник

ei

export default - зло... in React — русскоговорящее сообщество
export default - зло is the side effect
Правда я прямо точно не помню как оно работает, например если в 1 компоненте несколько useSelector
Вызывается везде, но ререндер должен быть 1 при этом
источник