Siirry sisältöön

14.5.0

Portal

Komponentti, jonka avulla on helppo käyttää Reactin ReactDOM.createPortal() -toimintoa.

Julkaistu versiossa 0.15.3

Käyttötarkoitus

Portal-komponentilla on mahdollista luoda komponentteja, jotka renderöidään komponentti- / DOM-hierarkiasta poikkeavalla tavalla. Komponentti itsessään voi olla hierarkiassa syvällä, mutta sen renderöimä HTML on tarve saada joskus eri paikkaan.

Portal-komponenttia käytetään esimerkiksi Kela Design Systemin Modal-komponentissa. Itse Modal:in toteuttava komponentti voi olla missä tahansa sovelluksen komponenttirakenteessa, mutta se renderöidään oletuksena body-tagin viimeisenä lapsena. Tällä saadaan helposti kierrettyä mm. CSS:n z-indekseihin ja overflow:n piilottamiseen liittyviä ongelmatilanteita.

Portal-komponentti on hyödyllinen silloin, kun renderöitävä HTML on tarpeen sijoittaa rakenteessa jonnekin muualle, kuin missä se renderöidään - esimerkiksi modaali, joka sijoitetaan sivun loppuun.

Esimerkki