In ReactJS ogni component può ricevere valori in input passati dal component padre. Se usiamo un component creato tramite function, questi valori sono raggruppati in un oggetto che viene passato in input alla funzione, mentre se creiamo il component tramite classe, questi vengono passati in input al costruttore e disponibili nel component attraverso la proprietà props.
function Child(props) { return <div>props.fullName</div>; } class Child extends React.Component { constructor(props) { super(props); } render() { return <div>{this.props.fullName}</div>; } }
Nel component padre quello che dobbiamo fare è passare al component figlio la proprietà fullName semplicemente impostandola come attributo del tag del component figlio.
function Parent() { ... return <Child fullName="Stefano Mostarda" /> }
Se usiamo TypeScript, possiamo ulteriormente migliorare il codice specificando il tipo dell'oggetto che contiene le props.
interface Props { fullName: string; } function Child(props: Props) { return <div>props.fullName</div>; } class Child extends React.Component { constructor(props: Readonly<Props>) { super(props); } render() { return <div>this.props.fullName</div>; } }
In questo modo all'interno del component Child avremo l'intellisense su props, e nel component Parent avremo l'intellisense sul tag Child.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Creare alias per tipi generici e tuple in C#
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Eseguire operazioni con timeout in React
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Eseguire query verso tipi non mappati in Entity Framework Core
Utilizzare database e servizi con gli add-on di Container App
Utilizzare Tailwind CSS all'interno di React: primi componenti
Usare lo spread operator con i collection initializer in C#
Miglioramenti nelle performance di Angular 16
Utilizzare i primary constructor di C# per inizializzare le proprietà
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework