React Hooks pārveidojot stāvokļa atkarības, ir vairākas izplatītas kļūdas, no kurām jāizvairās.
1. Neievērojot āķu noteikumus:
- Neizsauciet āķus cilpu, nosacījumu vai ligzdotu funkciju ietvaros. Tā vietā vienmēr izmantojiet Hooks savas React funkcijas augšējā līmenī pirms jebkādas agrīnas atgriešanas.
- Neizsauciet Hooks no parastajām JavaScript funkcijām. Tā vietā varat izsaukt Hooks no React funkcijas komponentiem vai pielāgotiem Hooks[1].
2. Nelietojiet āķus saprātīgi:
- Neizmantojiet āķus bez vajadzības. Izmantojiet tos tikai nepieciešamības gadījumā un izvairieties no pārmērīgas lietošanas.
- Izmantojiet āķus, lai pārvaldītu stāvokli un blakusparādības, taču izvairieties no to izmantošanas citiem mērķiem, piemēram, renderēšanai vai stila veidošanai[2].
3. Āķu nekārtošana un strukturēšana:
- Saglabājiet savus āķus sakārtotus un strukturētus. Izvairieties no dažādu veidu āķu sajaukšanas.
- Izmantojiet pielāgotus āķus, lai iekapsulētu sarežģītu loģiku un padarītu kodu lasāmāku[2].
4. Neizmantojot ESLint spraudni:
- Izmantojiet ESLint spraudni, lai īstenotu Hooks noteikumus. Tas var palīdzēt novērst kļūdas un nodrošināt, ka kods atbilst paraugpraksei[1].
5. Nepārbauda āķus:
- Uzrakstiet vienību testus saviem āķiem, lai nodrošinātu, ka tie darbojas, kā paredzēts, un atbilstoši apstrādājiet malas.
- Izmantojiet Jest vai citas testēšanas sistēmas, lai pārbaudītu savus āķus[4].
6. Neizmantojot nenorādīto nākamo:
- Izmantojiet Unstated Next, lai pārvaldītu stāvokli centralizētā vietā. Tas var palīdzēt samazināt stāvokļa atkarību un padarīt jūsu kodu labāk uzturējamu[5].
7. Paraugprakses neievērošana:
- Ievērojiet paraugpraksi statusa pārvaldīšanai programmā React, piemēram, izvairieties no nevajadzīga stāvokļa un izmantojiet konteksta API statusa kopīgošanai[3].
8. Karšu un renderēšanas masīvu dinamiska izmantošana:
- Dinamiski izmantojiet karšu un renderēšanas masīvus, lai izvairītos no nevajadzīgas renderēšanas un uzlabotu veiktspēju[3].
9. Āķu neizmantošana blakusparādībām:
- Izmantojiet Hooks blakusefektiem, piemēram, datu ielādei vai taimeru iestatīšanai. Neizmantojiet tos renderēšanai vai stila veidošanai[2].
10. Neizmantojot āķus sarežģītai loģikai:
- Izmantojiet Hooks sarežģītai loģikai, kas ietver vairākus stāvokļa mainīgos vai blakusparādības. Neizmantojiet tos vienkāršai loģikai, ko var apstrādāt ar citiem līdzekļiem[2].
Izvairoties no šīm izplatītajām kļūdām, jūs varat nodrošināt, ka jūsu React Hooks ir labi strukturēti, apkopjami un efektīvi.
Citāts:[1] https://legacy.reactjs.org/docs/hooks-rules.html
[2] https://www.smashingmagazine.com/2020/04/react-hooks-best-practices/
[3] https://bosctechlabs.com/react-hooks-practices-in-2024/
[4] https://www.linkedin.com/pulse/react-hooks-best-practices-efficient-maintainable-code-sasidharan-djlfc
[5] https://css-tricks.com/managing-state-in-react-using-unstated-next/