⊗jsrtPmHkCUp 10 of 47 menu

Konteksti React-də yeniləmək

Bu dərsdə konteksin dəyəri dəyişdikdə komponentlərin yenilənməsini nəzərdən keçirəcəyik. Tutaq ki, konteksin dəyişməsini istəyirsiniz.

Bu halda konteksdən vəziyyətlərlə birlikdə istifadə etmək faydalıdır. Gəlin əvvəlki dərsdə etdiyimiz qutucuqlarla tətbiqimizi bir az dəyişək və düyməyə kliklədikdə ötürülən dəyərin 'metal box :)' olmasını təmin edək.

Beləliklə, App faylımızı götürək və BigBox-dan sonra kiçik bir düymə əlavə edək:

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

Sonra, useState çəngəlini idxal edək və düyməyə kliklədikdə dəyişəcək name vəziyyətini təyin edək. Ona ilkin dəyər olaraq dərhal konteksin dəyəri kimi ötürdüyümüz, yəni 'small box :)' olan dəyəri təyin edək:

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

Bu dəfə konteks vasitəsilə sətir deyil, name vəziyyətini ötürəcəyik:

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

Son addım olaraq, düyməyə kliklədikdə işləyəcək qəbuledici təyin edəcəyik və setName funksiyası vasitəsilə vəziyyətin yeni dəyərini 'metal box :)' olaraq təyin edəcəyik. Bundan sonra düyməyə klikləyib nəticəni yoxlaya bilərsiniz:

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

Əvvəlki dərs üçün tapşırıqları həll edərkən yaratdığınız tətbiqdən istifadə edin. Konteks vasitəsilə App-dan rəqəm əvəzinə ötürəcəyiniz age vəziyyətini təyin edin, ona ilkin dəyər kimi 50 təyin edin. App-da Parent komponentindən sonra hər klikdə age veziyyətinin dəyərini 2 azaldan bir düymə əlavə edin.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et