React užtikrina būsenos nuoseklumą, kai kabliukai naudojami sąlygiškai, laikantis šių taisyklių:
1. Tik aukščiausio lygio skambučių kabliukai:
- Kabliukai turėtų būti iškviesti aukščiausiu React funkcijos lygiu, prieš bet kokius išankstinius grąžinimus. Tai užtikrina, kad Hooks būtų iškviečiamas ta pačia tvarka kiekvieną kartą, kai pateikiamas komponentas, o tai leidžia „React“ tinkamai išsaugoti „Hooks“ būseną tarp kelių „useState“ ir „useEffect“ iškvietimų[4].
2. Tik skambučių kabliukai iš „React“ funkcijų:
- Kabliukai turėtų būti iškviesti iš React funkcijos komponentų arba pasirinktinių kabliukų. Taip užtikrinama, kad visa būsenos logika komponente būtų aiškiai matoma iš jo šaltinio kodo[4].
3. Protingai naudokite kabliukus:
- Išmintingai naudokite kabliukus, vengdami nereikalingų būsenos atnaujinimų ir šalutinio poveikio. Tai galima pasiekti naudojant „useMemo“ ir „useCallback“, kad išsaugotumėte funkcijas ir išvengtumėte nereikalingų skaičiavimų[1].
4. Naudokite konteksto API:
- Naudokite konteksto API, kad bendrintumėte būseną tarp komponentų. Tai leidžia valdyti būseną centralizuotoje vietoje ir pasiekti ją iš bet kurio komponento, kuriam to reikia[1].
5. Naudokite nuorodas:
- Naudokite nuorodas, kad pasiektumėte DOM mazgus ar kitas reikšmes, kurias reikia pasiekti tiesiogiai. Tai leidžia valdyti būseną ir šalutinį poveikį labiau kontroliuojamu būdu[1].
6. Naudokite „Performance Hooks“:
– Norėdami optimizuoti atvaizdavimo našumą, naudokite našumo kabliukus, pvz., „useMemo“ ir „useCallback“. Tai leidžia praleisti nereikalingą darbą ir optimizuoti atvaizdavimą[1].
7. Naudokite išteklių kabliukus:
- Naudokite išteklių kabliukus, pvz., „useResource“, kad pasiektumėte išteklius nebūdami jų būsenos dalimi. Tai leidžia valdyti būseną ir šalutinį poveikį labiau kontroliuojamu būdu[1].
8. Naudokite tinkintus kabliukus:
- Naudokite pasirinktinius kabliukus, kad įtrauktumėte sudėtingą logiką ir paverstumėte savo kodą lengviau skaitomu. Tai leidžia pakartotinai naudoti būsenos logiką tarp skirtingų komponentų[1].
Laikydamiesi šių taisyklių ir geriausios praktikos, galite užtikrinti, kad programa „React“ išlaikytų būsenos nuoseklumą, net kai kabliukai naudojami sąlygiškai.
Citatos:[1] https://www.geeksforgeeks.org/reactjs-hooks/
[2] https://legacy.reactjs.org/docs/hooks-intro.html
[3] https://www.smashingmagazine.com/2020/04/react-hooks-best-practices/
[4] https://legacy.reactjs.org/docs/hooks-rules.html
[5] https://react.dev/reference/react/hooks