Lo stato è un concetto cruciale e reagisce, ed è quindi importante per me capire come
funziona.
U. S. state è il modo in cui gestisci i componenti statali e funzionali e il tuo stato può essere qualsiasi cosa.
Non deve essere un array.
Potrebbe essere un testo, un numero, un oggetto, una matrice, un valore booleano, qualcosa del genere.
Usa stato restituisce sempre un array con due elementi.
Indipendentemente dal tuo stato, se il tuo stato è uno stato di non utilizzo restituisce comunque un array con esattamente due
elementi.
Perché il primo elemento è quindi sempre la tua ultima istantanea di stato.
E il secondo elemento è una funzione che consente di aggiornare lo snapshot di stato ogni volta che si aggiorna lo
snapshot di stato.
React farà due cose.
Aggiornerà questi dati di stato memorizzati internamente.
Quindi, per esempio, qui, quando aggiungiamo il nostro primo nuovo obiettivo, sostituirà lo stato iniziale con il nostro
nuovo stato.
In questo caso, con il nuovissimo array che abbiamo creato con Concat.
E una volta che ha aggiornato i dati internamente, chiamerà di nuovo questa funzione componente ed eseguirà
l'intera funzione.
E quindi tutti i re hanno reso questo J come codice X.
Ora sotto il cofano, non restituirà l'intera dom.
Controllerà solo quali parti del DOM devono essere aggiornate, ma rivaluterà l'intero componente.
Ciò significa, ovviamente, che esegue nuovamente use state ma use state internamente funziona in modo tale da inizializzare uno
stato stazionario solo quando il componente viene renderizzato per la prima volta e per un successivo
Rehren ricicla.
Estrae semplicemente l'istantanea dell'ultimo stato e praticamente ignora il valore iniziale impostato qui.
Ecco come funziona uno stato.
Ora, è importante capire che questo modo di aggiornare la nostra proprietà in questo scenario non è
il modo migliore possibile.
Così duplicato e commentato.
Quindi ce l'abbiamo ancora come riferimento.
Ma vediamo anche l'approccio migliore.
Questo approccio funziona chiaramente.
E nella maggior parte dei casi funzionerà.
Ma devi essere consapevole del fatto che questo intero stato di aggiornamento fa parte del processo di reazione.
La fine non è gestita da reagire.
E quando assegni e dichiari che non mette in pausa tutto e reinserisci immediatamente la tua app.
Al contrario, è pianificato l'aggiornamento dello stato.
E se hai un'applicazione con molti aggiornamenti di stato in corso e molto lavoro in corso, il
che non è il caso e fa l'applicazione ma può essere il caso e altre applicazioni, l'aggiornamento del
tuo stato potrebbe essere differito di alcuni millisecondi.
Ciò significa che forse se un utente fa clic, aggiunge oro più volte, lo Skold di base, che è attualmente visualizzato sullo
schermo, potrebbe non essere il nostro stato più recente perché non tutti gli aggiornamenti di stato potrebbero essere
ancora stati elaborati.
Pertanto, esiste una forma migliore di aggiornamento di questo invece di passare i nostri nuovi dati di stato per stabilire gli obiettivi del
corso.
È possibile passare una funzione per impostare gli obiettivi del corso, una funzione che riceve gli ultimi obiettivi del corso pref dello stato
e deve restituire una nuova istantanea dello stato e reagire bene.
Pianifica quindi tutte queste chiamate di funzione e garantisci che vengano eseguite nell'ordine giusto in
modo che anche se un aggiornamento di stato è stato rinviato al momento dell'esecuzione dell'aggiornamento successivo, ti garantisca
anche il primo eseguito.
E poi qui darteresti semplicemente Darfor per il ritorno all'oro, che non è ancora un nuovo
obiettivo.
Produrrà lo stesso risultato di prima in questa app.
E in questa semplice app, questo approccio sarebbe andato bene.
Fondamentalmente non c'è alcuna possibilità di reagire, rinviando gli aggiornamenti così a lungo da finire con uno stato errato.
Ma questo è l'approccio a prova di proiettile che funzionerà sempre.
Ne hai bisogno solo se l'aggiornamento dello stato dipende dai dati dello stato precedente, come si fa.
Se l'aggiornamento dello stato è un nuovo pezzo di dati, che non dipende dallo stato precedente, è sempre possibile utilizzare
in modo sicuro questo modulo non funzionale.
Ed ecco una nota a margine, perché, naturalmente, tutto l'accorciamento sfrutta la sintassi
della funzione erale e si libera dell'istruzione return in parentesi graffe.
Dal momento che abbiamo una sola espressione che restituiamo immediatamente.
Quindi ora con quell'annuncio, Brooks ha chiesto prima, ma questo è un approccio un po 'più sicuro e ha raccomandato un
approccio.
Se l'aggiornamento dello stato dipende dallo stato precedente.