⊗jsrtPmHkCUp 10 of 47 menu

React-ում կոնտեքստի թարմացում

Այս դասում մենք կքննարկենք կոնտեքստի արժեքի փոփոխության դեպքում կոմպոնենտների թարմացումը: Ենթադրենք, որ ցանկանում եք, որ կոնտեքստը փոխվի:

Այս դեպքում օգտակար է կիրառել կոնտեքստ ստեյթերի հետ զուգակցված: Եկեք մի փոքր փոխենք մեր տուփիկներով հավելվածը, որը մենք պատրաստեցինք նախորդ դասին և պատրաստենք այնպես, որ կոճակի սեղմման դեպքում փոխանցվող արժեքը դառնա 'metal box :)':

Այսպիսով, վերցնենք մեր App ֆայլը և BigBox-ից հետո ավելացնենք կոճակ.

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

Հաջորդիվ իմպորտ անենք useState հուկը և ստեղծենք name ստեյթը, որի արժեքը կփոխվի կոճակի սեղմման դեպքում: Տանք նրան նախնական արժեք այն, ինչ մենք անմիջապես փոխանցել էինք կոնտեքստի արժեքով, այսինքն 'small box :)':

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

Այս անգամ կոնտեքստով մենք կփոխանցենք ոչ թե տող, այլ name ստեյթը.

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

Որպես վերջին քայլ, մենք կկանչենք կոճակի սեղմման մշակիչը և setName ֆունկցիայի միջոցով կսահմանենք ստեյթի նոր արժեքը որպես 'metal box :)': Դրանից հետո հնարավոր կլինի սեղմել կոճակի վրա և ստուգել արդյունքը.

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

Օգտագործեք ձեր կողմից ստեղծված հավելվածը նախորդ դասի առաջադրանքները լուծելիս: Ստեղծեք age ստեյթ, որը դուք կփոխանցեք թվի փոխարեն կոնտեքստի միջոցով App-ից, տվեք նրան նախնական արժեք 50: Ավելացրեք Parent կոմպոնենտի տակ App-ում կոճակ, որի յուրաքանչյուր սեղմման դեպքում ստեյթի արժեքը կնվազի 2-ով:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել