⊗jsrtPmHkCUp 10 of 47 menu

Actualizarea contextului în React

În această lecție vom analiza actualizarea componentelor atunci când se schimbă valoarea contextului. Să presupunem că doriți ca contextul să se modifice.

În acest caz, este util să aplicați contextul împreună cu stările. Să modificăm puțin aplicația noastră cu cutii, pe care am făcut-o în lecția anterioară și să facem astfel încât la click pe buton valoarea transmisă să devină 'metal box :)'.

Deci, să luăm fișierul nostru App și după BigBox să desenăm un buton:

function App() { return ( <MyContext.Provider value="small box :)"> <BigBox /> <button>click</button> </MyContext.Provider> ); }

Apoi importăm hook-ul useState și creăm o stare name, a cărei valoare va fi modificată la click pe buton. Să-i stabilim valoarea inițială pe cea pe care o transmiteam imediat ca valoare a contextului, adică 'small box :)':

function App() { const [name, setName] = useState('small box :)'); }

De data aceasta, prin context vom transmite nu un șir, ci starea name:

<MyContext.Provider value={name}> <BigBox /> <button>click</button> </MyContext.Provider>

Ca ultim pas, vom apela handler-ul de click pe buton și cu ajutorul funcției setName vom stabili noua valoare a stării în 'metal box :)'. După aceasta, puteți apăsa pe buton și puteți verifica rezultatul:

<button onClick={() => { setName('metal box :)'); }}>click</button>

Utilizați aplicația creată de dvs. la rezolvarea sarcinilor din lecția anterioară. Creați o stare age, pe care o veți transmite în loc de număr prin context din App, stabiliți-i valoarea inițială 50. Adăugați sub componenta Parent în App un buton, la fiecare click pe care valoarea stării age se va micșora cu 2.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge