Lekce 20 - Portály v Reactu
V předchozí lekci, Fragmenty v Reactu, jsme si v praxi ukázali, jak fungují fragmenty, jak je použít a kdy jejich použití upřednostnit.
V následujícím tutoriálu pokročilého Reactu se
seznámíme s portály. Ukážeme si, jak portál v Reactu
vytvořit a využít pro tvorbu modálního okna. Využijeme k
tomu funkci createPortal()
a naši aplikaci s pandou.
Co je to portál
Portál je v Reactu mocným nástrojem. Umožňuje nám renderovat komponenty do jiné části DOM, která je mimo strom komponent aplikace. To je užitečné například pro vytváření modálních oken, tooltipů nebo jiných overlay prvků.
Tvorba portálu přes
createPortal()
Jednoduchou tvorbu portálu umožňuje funkce createPortal()
,
která je součástí knihovny ReactDOM.
Abychom mohli portál vytvořit, nejprve musíme mít v DOM připravený
cílový kontejner, kam chceme komponentu vykreslit. Například prázdný
element div
, který vytvoříme někde v HTML dokumentu.
Funkce createPortal()
má pak dva argumenty:
- prvním je komponenta, kterou chceme vykreslit do portálového kontejneru,
- druhým pak odkaz na HTML element (nebo selektor), kam chceme komponentu vykreslit.
Funkce createPortal()
vezme komponentu, kterou jsme jí předali
jako první argument. Vykreslí ji do cílového kontejneru, který jsme jí
předali jako druhý argument. Tato komponenta pak bude zobrazena v místě, kde
je cílový kontejner v DOM stromu.
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V tutoriálu pokročilého Reactu si vysvětlíme, jak fungují portály. Na příkladu vytvoření modálního okna si ukážeme funkci createPortal().
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.