In genere, il flusso di rendering di un component in React prevede che al cambio di un valore tra le props o lo state il component venga renderizzato da zero. Nella maggioranza dei casi questo flusso è più che sufficiente, ma esistono casi in cui non è così. Pensiamo ad esempio quando dobbiamo impostare il focus su un campo. In questi renderizzare nuovamente il component non è ammissibile, quindi dobbiamo ricorrere all'utilizzo del DOM.
Per ottenere un riferimento agli oggetti del DOM dobbiamo prima creare un oggetto ref e memorizzarlo in una variabile, e poi in fase di rendering assegnare l'oggetto del DOM alla variabile.
class MyComponent extends React.Component { constructor(props) { super(props); this.myRef = React.createRef(); } render() { return <div ref={this.myRef} />; } }
Per accedere all'oggetto del DOM, dobbiamo sfruttare la proprietà current di myRef.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
DevOps for any developer with GitHub
Recuperare un Azure Storage account cancellato
Utilizzare la libreria FluentValidation per validare formalmente un oggetto .NET
Visual Studio Code per lo sviluppo in team
Abilitare Hot Module Replacement in Angular
Eseguire integration test di un progetto ASP.NET Core
Eseguire del codice personalizzato al click di una checkbox in Blazor
Tracciare il body delle richieste fallite con Application Insights in .NET Core
Rendere sticky un elemento HTML in Angular
Gestire il timeout di esecuzione dei task nelle pipeline di Azure DevOps
Persistere una proprietà complessa di una classe come JSON in una colonna di una tabella con Entity Framework Core
Creare un interceptor per ottimizzare il codice SQL generato da Entity Framework Core
I più letti di oggi
- Creare un web server locale con LiveReload
- Operatori di confronto in JavaScript: == e ===
- Microsoft WebCamp - Roma, Milano
- Dev Night #2: Serverless - Milano
- Disponibile la release finale di Moonlight 1.0
- Lancio ufficiale di Moonlight 1.0
- Disponibile il Silverlight Toolkit March 2009 Release
- MonoTouch in versione 1.0: C# per iPhone diventa realtà