
GUIDE PER ASPIRANTI PROGRAMMATORI
Valori primitivi in JSX
Abbiamo creato il nostro primo componente, costituito da un elemento div che contiene un paragrafo p, e abbiamo applicato dello stile tramite linguaggio CSS. Fin’ora, però, abbiamo trattato JSX come se fosse codice HTML tradizionale. È ora di mischiarvi un po’ di linguaggio JavaScript! Cominciamo con qualcosa di semplice: estraiamo il nostro messaggio (“Hello React!”),…


Vuoi avviare una nuova carriera o fare un upgrade?
Trova il corso Digital & Tech più adatto a te nel nostro catalogo!
Abbiamo creato il nostro primo componente, costituito da un elemento div che contiene un paragrafo p, e abbiamo applicato dello stile tramite linguaggio CSS.
Fin’ora, però, abbiamo trattato JSX come se fosse codice HTML tradizionale. È ora di mischiarvi un po’ di linguaggio JavaScript!
Cominciamo con qualcosa di semplice: estraiamo il nostro messaggio (“Hello React!”), inseriamolo in una costante e iniettiamo la costante nel valore di ritorno della funzione.
Spoiler alert: mentre per passare da JavaScript a JSX usiamo parentesi tonde, per passare da JSX a JavaScript usiamo parentesi graffe.
/* File: src/App.jsx */ function App() { const message = "Hello React!"; return ( <div className="App"> <p>{message}</p> </div> ); }
Il codice, in realtà, si spiega da solo, ma proviamo a spiegarlo ugualmente: abbiamo creato una costante, che abbiamo chiamato message, in cui abbiamo inserito il messaggio “Hello React!”. La costante è stata poi iniettata nella parte di JSX che la funzione restituisce, tramite l’utilizzo di parentesi graffe ({message}), chiamato Curly Brackets o Bracket Interpolation. Se ci pensi, non è molto diverso dall’utilizzo di string template e template literals in JavaScript, in cui possiamo usare la sintassi ${} per scrivere cose come:
const name = "Andrea"; const greeting = `Hello, my name is ${name}!`;
Invece di una stringa abbiamo JSX e invece di ${} usiamo {}.
Vediamo come i differenti tipi nativi di JavaScript vengono interpretati in JSX:
- Stringhe (string): vengono iniettate, come abbiamo appena visto
- Numeri (number): vengono trasformati in stringhe, in base 10, e poi iniettati
- Booleani (boolean): non vengono stampati (diventano stringhe vuote).
- null: rappresenta l’assenza di contenuto
- undefined: non viene stampato (diventa una stringa vuote).
Importante: da un punto di vista pratico, null, true, false e undefined provocano lo stesso risultato in JSX, cioè un’assenza di contenuto. Tuttavia, la convenzione vuole che, in React, solo null rappresenti l’assenza di contenuto. Utilizzare true, false o undefined come contenuto in JSX è, quindi, sbagliato.
CONTENUTI GRATUITI IN EVIDENZA
Guide per aspiranti programmatori 👨🏻🚀
Vuoi muovere i primi passi nel Digital e Tech? Abbiamo preparato alcune guide per aiutarti a orientarti negli ambiti più richiesti oggi.