React je JavaScriptová knižnica určená na tvorbu moderných webových aplikácií. Jeho základnou stavebnou jednotkou sú komponenty. Pochopenie ich fungovania je nevyhnutné pre každého, kto chce efektívne pracovať s Reactom.
Komponenty sú samostatné časti používateľského rozhrania, ktoré je možné opakovane používať v aplikácii. Predstavte si ich ako stavebné bloky, z ktorých sa skladá celá webová aplikácia.
Používanie komponentov umožňuje:
V Reacte existujú dva základné typy komponentov:
Funkčné komponenty sú jednoduchšie a využívajú sa v moderných React aplikáciách. Definujú sa ako JavaScript funkcie.
function Pozdrav() { return <h1>Ahoj, svet!</h1>; }Vlastnosti funkčných komponentov:
Triedové komponenty sú staršia forma písania komponentov. Používali sa predtým, než boli predstavené React Hooky.
class Pozdrav extends React.Component { render() { return <h1>Ahoj, svet!</h1>; } }Vlastnosti triedových komponentov:
this.state
.Props (properties) sú údaje, ktoré sa prenášajú do komponentov. Pomocou nich môžeme dynamicky meniť obsah komponentov.
function Pozdrav(props) { return <h1>Ahoj, {props.meno}!</h1>; } export default function App() { return <Pozdrav meno="Peter" />; }
Okrem vlastností props môžeme v Reacte používať aj stav na ukladanie a aktualizáciu dát v rámci komponentu.
import { useState } from "react"; function Pocitadlo() { const [pocet, setPocet] = useState(0); return ( <div> <p>Počet kliknutí: {pocet}</p> <button onClick={() => setPocet(pocet + 1)}>Klikni</button> </div> ); }
Každý React komponent prechádza určitými fázami, ako je vytvorenie, aktualizácia a zničenie.
componentDidMount
– Volá sa po prvom vykreslení komponentu.componentDidUpdate
– Spustí sa po aktualizácii komponentu.componentWillUnmount
– Vykoná sa pri odstraňovaní komponentu.V moderných aplikáciách sa namiesto týchto metód často používa useEffect
hook.
import { useEffect } from "react"; function Komponent() { useEffect(() => { console.log("Komponent bol vytvorený!"); return () => console.log("Komponent bol zničený!"); }, []); return <p>Komponent Reactu</p>; }
Props sa prenášajú do komponentov a sú nemenné. State sa mení v rámci komponentu.
Dnes sa väčšinou používajú funkčné komponenty. Triedové komponenty sa hodia na prácu so starším kódom.
Pri väčších projektoch sa odporúča používať nástroje na správu stavu, ako napríklad Redux.
Ak máte záujem o prezenčné alebo online školenie programovania, pozrite si našu ponuku na www.like-it.sk. Naše kurzy vedú skúsení odborníci, ktorí vám pomôžu zvládnuť základy aj pokročilé koncepty programovania.