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
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Creare una libreria CSS universale: Nav menu
Recuperare App Service cancellati su Azure
Ottenere un token di accesso per una GitHub App
Cancellare una run di un workflow di GitHub
Cambiare la chiave di partizionamento di Azure Cosmos DB
Recuperare l'ultima versione di una release di GitHub
Ordine e importanza per @layer in CSS
Gestione degli stili CSS con le regole @layer
Selettore CSS :has() e i suoi casi d'uso avanzati
Sfruttare GPT-4o realtime su Azure Open AI per conversazioni vocali
Gestione CSS in Blazor con .NET 9