⊗jsrtPmHkCUp 10 of 47 menu

Context bijwerken in React

In deze les bekijken we het bijwerken van componenten wanneer de contextwaarde verandert. Stel dat je wilt dat de context verandert.

In dat geval is het handig om context te gebruiken in combinatie met states. Laten we onze applicatie met doosjes, die we in de vorige les hebben gemaakt, een beetje aanpassen en ervoor zorgen dat bij het klikken op een knop de doorgegeven waarde verandert in 'metal box :)'.

Laten we dus ons bestand App nemen en na BigBox een knop tekenen:

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

Importeer vervolgens de hook useState en maak een state name aan, waarvan de waarde zal veranderen bij het klikken op de knop. Laten we de startwaarde instellen op wat we eerst direct als contextwaarde doorgeven, namelijk 'small box :)':

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

Deze keer geven we via de context niet een string door, maar de state name:

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

Als laatste stap roepen we een click handler voor de knop aan en gebruiken we de functie setName om een nieuwe waarde voor de state in te stellen op 'metal box :)'. Hierna kan er op de knop worden geklikt en het resultaat worden gecontroleerd:

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

Gebruik de applicatie die je hebt gemaakt bij het oplossen van de taken voor de vorige les. Maak een state age aan, die je in plaats van het getal via context zult doorgeven vanuit App, stel de startwaarde in op 50. Voeg onder de component Parent in App een knop toe, waarbij bij elke klik op de knop de waarde van de state age met 2 afneemt.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren