Ogni component di React deve avere un solo nodo padre. Spesso questo nodo è un tag div o span o table o altro ancora. Esistono tuttavia dei casi in cui questo component non può essere un tag HTML. Analizziamo il prossimo esempio.
class MyTable extends React.Component { render() { return ( <table> <tr> <MyColumns /> </tr> </table> ); } }
Il component Columns renderizza una serie di colonne all'interno della riga. Se questo component utilizzasse un qualunque tag HTML come nodo principale (un div ad esempio), all'interno del tag tr avremmo un div che al suo interno avrebbe i tag td. Un tale codice HTML non è valido, ma JSX mette a disposizione una funzionalità che permette di avere un nodo padre che non viene poi renderizzato in HTML: fragment.
class MyColumns extends React.Component { render() { return ( <> <td>Column1</td> <td>Column2</td> <td>Column3</td> </> ); } }
Nel momento in cui React andrà a renderizzare il component, il tag aperto/chiuso verrà eliminato e quindi il codice generato sarà valido.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Referenziare un @layer più alto in CSS
Selettore CSS :has() e i suoi casi d'uso avanzati
Utilizzare Container Queries nominali
Applicare un filtro per recuperare alcune issue di GitHub
Utilizzare Containers in .NET Aspire
Gestire codice JavaScript con code splitting e lazy loading
Gestire progetti NPM in .NET Aspire
Creare una libreria CSS universale: Immagini
Utilizzare l nesting nativo dei CSS
Eliminare record doppi in Sql Server
Introduzione alle Container Queries
Configurare lo startup di applicazioni server e client con .NET Aspire