Size: a a a

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

2018 May 19

l

la gente está muy loca in Redux — русскоговорящее сообщество
Dmitry Zherebko
({ data: data.text })
Мы уже рассматривали этот пример. Если data — стор, то будет пропускать апдейты, если же он получен через .map — то нет)
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Dmitry Zherebko
или если я там map(e=>data.text.split(“.”))
А вот тут всегда скипает, потому что результат опять же проверяется через ===
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
не лучше ли будет определять через геттеры что юзается ?
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Нет
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
у тебя есть же шейп стора
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
К моменту рассчёта стора и так известно, какие данные обновились
источник

NK

ID:72036040 in Redux — русскоговорящее сообщество
Да просто нужно стейт через линзы. Что не понятного... Все проблемы автоматом уходят, т.к. ты подписываешься на линзы. Селекторы отпадают как данность. Линза - это гетер и сетер только на конкретное значение в стейте.

https://codesandbox.io/s/62o44mwllz
источник

NK

ID:72036040 in Redux — русскоговорящее сообщество
Но это ^ плохой пример, там надо апи еще дорабатывать
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Сторы полученные через .map — это геттеры без сеттеров в линзах
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
la gente está muy loca
К моменту рассчёта стора и так известно, какие данные обновились
смотри а как мне быть если мне надо store.map(data=> ({ selectedUsers: data.ui.users,  popupVisible: data.ui.popup  }))
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Без сеттеров потому что подход mobx ведёт к хаосу
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
как этот кейс обойти тогда ?
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
У тебя два стора тут в результате)
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Вся фигня в том, что в реальности все сторы обвешаны хэндлерами
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Ввиду чего ты ни строчки не экономишь, делая именно вот так)
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
окей, как оно будет работать в этом кейсе ?
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
будет пересчитываться на каждый апдейт стора ?
источник

AK

Anton Korzunov in Redux — русскоговорящее сообщество
ID:72036040
Да просто нужно стейт через линзы. Что не понятного... Все проблемы автоматом уходят, т.к. ты подписываешься на линзы. Селекторы отпадают как данность. Линза - это гетер и сетер только на конкретное значение в стейте.

https://codesandbox.io/s/62o44mwllz
Я тут смотрю на идею переделать powerplug на линзы. Как тебе идея?
источник

DZ

Dmitry Zherebko in Redux — русскоговорящее сообщество
Anton Korzunov
Я тут смотрю на идею переделать powerplug на линзы. Как тебе идея?
хм, а как апи выглядеть будет ?)
источник

l

la gente está muy loca in Redux — русскоговорящее сообщество
Dmitry Zherebko
будет пересчитываться на каждый апдейт стора ?
Не на каждый, если два поля обновляются одновременно, то будет только обин пересчёт
источник