Size: a a a

Reatom — стейт-менеджер

2021 May 10

a

artalar in Reatom — стейт-менеджер
Ну или так
источник

d

daibogh in Reatom — стейт-менеджер
🙂 спасибо
источник

a

artalar in Reatom — стейт-менеджер
Поделись потом результатами))
источник

ДК

Дмитрий К in Reatom — стейт-менеджер
Почему бы не добавить в сравнение lom_atom?
Стоит замерять не только время обновления, но и время первичной инициализации. У решений похожих на mobx она должна быть сильно медленнее.
источник

d

daibogh in Reatom — стейт-менеджер
Хорошо)
источник

d

daibogh in Reatom — стейт-менеджер
Курсовая будет по дисциплине, поэтому здесь участвует только 3 библиотеки. Позже я буду делать замеры для большего числа библиотек. Однако все рассматривается в контексте react приложений, есть ли для него врапперы в lom_atom?
источник

ДК

Дмитрий К in Reatom — стейт-менеджер
Так это собственно и есть порт $mol_atom для реакта.
источник

d

daibogh in Reatom — стейт-менеджер
Хорошо, тогда я добавлю его для последующего исследования. По текущему дедлайн просто через день, а я не успеваю отчёт оформить 😅
источник
2021 May 13

a

artalar in Reatom — стейт-менеджер
Сегодня (13 Мая) в 19:30 по Москве продолжим с @artalar разбираться с управлением состояния

🎤 Пообщаться голосом: https://meet.google.com/bdk-davb-ibi
📺 Посмотреть: twitch.tv/kirjs
👀 Первая серия: https://www.youtube.com/watch?v=EfOJ83pA3YU
источник
2021 May 20

a

artalar in Reatom — стейт-менеджер
После еще нескольких десятков часов экспериментов с апишкой и тайпингами к ней, я, наконец, чуть подрефакторил ее, переписав половину кода 🙂 уже все тесты проходят, что меня крайне радует.

Добавлено много новых фич:

- можно описать эффект на изменение зависимого атома
- в declareAtom можно указывать методы как шорткаты к созданию экшенКриэйтеров и редьюсеров к ним
- экшен может иметь поле targets с массивом атомов в которые стор запихнет этот экшен, даже если на них нет подписок. Этот механизм используется в методах по умолчанию. Профит в том что если диспатчить метод атома - апдейт точно не пропустится (есть такая проблема в первом реатоме, если на атом нет подписок)
- добавлен ctx - локальный (хранится в сторе) контекст атома (можно мутировать) для эффектов.
- добавлен метод onChange который вызывается при изменении собственного стейта (аналог useEffect с пустыми депсами)

Вот пример реализации declareResource на новой апишке

https://github.com/artalar/reatom/blob/v2/packages/core/src/experiments/declareResource.ts
источник

a

artalar in Reatom — стейт-менеджер
А еще внутренняя реализация теперь проще позволяет реализовать fork - прозрачный и умный механизм использования атомов в локальных скоупах, а не глобально. Это будет убер фича, но расскажу о ней попозже, когда смогу имплементировать и потестить.
источник

a

artalar in Reatom — стейт-менеджер
Все это еще не запаблишено в npm. Работку нужно поработать, в течении дня мб залью.
источник

a

artalar in Reatom — стейт-менеджер
Учитывая новые фичи (методы атома), апишка useAtom для реакта будет изменена на лад useState / useReducer. Выглядит как-то так
источник

a

artalar in Reatom — стейт-менеджер
Еще прикол. У declareAtom всего две перегрузки, они покрывают функции  declareAtom и combine из первой версии и привносят еще пачку новых.
источник
2021 May 21

П

Павел in Reatom — стейт-менеджер
источник

П

Павел in Reatom — стейт-менеджер
@artalar не будет ли проблемой что useAtom возвращает разное кол-во в массиве?
источник

a

artalar in Reatom — стейт-менеджер
не понял
источник

a

artalar in Reatom — стейт-менеджер
два элемента всего - стейт и методы(экшенКриэйторы)
источник

a

artalar in Reatom — стейт-менеджер
Так же как useState возвращает state и setSttae
источник

П

Павел in Reatom — стейт-менеджер
я про скрин твоего скрина где разное useAtom возвращает
источник