⊗jsrtPmRtGSD 29 of 47 menu

Məlumatların React Router-da depodan alınması

Görürsüz ki, hələki bizim tətbiqimiz statikdir. Bu və sonrakı dərslərdə biz onu canlandırmağa başlayacayıq. Artıq yaxın dərslərdə biz React Router istifadə edərək məhsulları siyahıya əlavə edə biləcəyik.

Bu dərsdə biz, başlanğıc olaraq, depodan məlumatların alınması ilə məşğul olacayıq. Lokal məlumat saxlanması üçün biz localForage deposundan istifadə edəcəyik (siz onun istifadəsi və üstünlükləri haqqında sənədlərdə oxuya bilərsiniz) - LocalStorage-ın analoqu, hansını ki, bütün müasir brauzerlər dəstəkləyir. Bu, əslində, bir neçə saxlama texnologiyasının birləşməsidir. Nisbətən asan istifadə ilə, o, böyük həcmdə məlumatları, o cümlədən müxtəlif tipləri, hətta şəkilləri saxlamağa imkan verir. Gəlin onu layihəmizə quraşdıraq. Terminala daxil edin:

npm i localforage

Tətbiqimizi yenidən işə salaq. src qovluğunda biz forStorage.js faylını yaradacayıq, hansında ki, depo ilə iş üçün funksiyalar olacaq.

Beləliklə, məhsulların depodan yüklənməsi funksiyası ilə başlayaq. forStorage.js faylına kitabxananı import edək və məhsulları almaq üçün getProducts funksiyasını yazaq:

import localforage from 'localforage'; export async function getProducts() { await someNetwork(); let products = await localforage.getItem('products'); if (!products) products = []; return products; }

Aşağıda, funksiya kodundan sonra biz həmçinin someNetwork üçün kodu əlavə edəcəyik, şəbəkə gecikmələrini (0.7 saniyəyə qədər) təqlid edərək funksiyaların normal işləməsi üçün. Əgər bizim məhsulumuz "keşlənibsə", onda depo ilə iş funksiyalarında gecikmə olmayacaq, əks halda isə gecikmə olacaq, siz sonradan görəcəksiniz ki, bu necə işləyir:

let someCache = {}; async function someNetwork(key) { if (!key) { someCache = {}; } if (someCache[key]) { return; } someCache[key] = true; return new Promise((res) => { setTimeout(res, Math.random() * 700); }); }

Əvvəlki dərslərə aid tapşırıqlarda yaratdığınız tətbiqi götürün. Tətbiqə localForage deposunu quraşdırın.

Dərs materiallarından istifadə edərək, forStorage.js faylını yaradın və onun içərisində tələbə məlumatlarını depodan almaq üçün getStudents funksiyasını yazın.

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