Wpis z mikrobloga

Strasznie trudno się przebić z nową biblioteką do zarządzania stanem w Reactcie (wiedziałem na co się piszę).
Piszę doksy, twittery, reddity, do youtuberów i nadal słabo mi idzie.
Jak w nic w życiu czuję, że to pyknie (tylko może muszę jakieś artykuły jeszcze na medium napisać, albo może coś nagrać samemu na YT).

Co to za libka?

- Tiny and powerful React hook-based state management library.


Właśnie zrobiłem nowe releasy, a w nich:

- Redux DevTools first-class support

- New demos

- Preventing occasional and theoretical events loss

- Docs, docs, docs


Demko: https://bit-about.github.io/state/

#react #reactnative #opensource #javascript #programowanie
  • 15
@Garen_eye: spoko zią, ale jako backendowiec od 2 miesięcy w React nie pojmuje tego zarzadzania stanem, a pojmuje dużo więcej` niż moi współpracownicy, dlatego rozumiem że może być ciężko.
na pewno pomocny jest filmik na youtube krok po kroku, jaki jest problem, jak rozwiązuje go Twoje narzedzie i przykład jego implementacji, najkrócej jak sie da max 1h
@LepiejWcaleNizPozno tak, widziałem i się na to przygotowuję :D Ale chyba jak wrzucę to teraz do libki, to libka będzie miała Reacta 18 w peerDependencies i straci support dla wcześniejszych projektów. Ale IMO na razie nie mam tych problemów które rozwiązuje useSyncExternalStore, bo ten mój store jest bardzo scouplowany z komponentami i render systemem, przez co ten stor jest już "Synced" bo to są zwykłe hooki useState a nie jakiś oddzielny store
@zackson tak naprawdę to jest przepisana libka Constate (https://github.com/diegohaz/constate), dodane są dużo lepsze sellektory, dodane devToolsy, duzo lepsze automatyczne dedukowanie typów w TS i dopisana kompatybilna libka do side-effectów (@bit-about/event)

Odpowiadając na pytanie, czym taki Constate jest lepszy:
- od Jatoi, Zustanda etc? - Jest imperatywna, tzn. dokładnie według planu jaki realizuje react. Są hooki z useState() i tam się trzyma dane. Trzyma się tutaj stan na kontekstach, które są pod
btw. @zacksoon kupiłem domenkę bit-about.tools i zrobię tam z tymi libkami porównanie inspirując sie https://monorepo.tools/#tools-review

wiem, że ludzie wybiorą coś przetestowanego w boju - w mojej firmie, projekty które leaduje też rozpoczynam w innych libkach - ale, kurde od czegoś trzeba zaczać, a patrząc na kod tych libek to wcale nie uważam, że mam mniejsze szanse xD tylko one zrobiły coś lepiej ode mnie w kwestii reklamy, tylko jeszcze nie wiem co
@krzykrzy1995 nadal ma nieporównywalnie więcej boilerplate niż te biblioteki które wymieniłem. Niema też oczywistych side-effectów, są tam asynchroniczne akcje, które gdzieś trzeba umieścić - i najczęściej to będzie na komponentach, co już brudzi wszystko :P

W redux toolkicie najbardziej nienawidze tego, że ktoś scouplował eventy ze stanem, ponieważ wyszedł z założenia, że każdy event zawsze coś zmienia w storze. W teorii tak - ale w praktyce, ludzie zaczynają myśleć o akcjach jak
@LepiejWcaleNizPozno dzięki za feedback. Jkbc support devtoolsów, cofanie akcji dodałem w ostatnim updacie.

A co do jednego stora (nawet jak są slices) nie jestem przekonany, bo nie lubie trzymać w memory sub-stanu dla części aplikacji, która nawet jeszcze nie została zainicjalizowana
Dziękuję za feedback,
@niepodszywamsiepodbiauka to chyba prawda, właśnie widzę pełno komentarzy "czemu nie zustand" etc, a ja mam w glowie grumpy cata i myślę sobie "skąd to pytanie wgl, nie widzisz X, Y, Z etc" - więc muszę chyba wyrzygać te wartości które moim zdaniem przeważają w moim rozwiazaniu xd