⊗jsrtPmRtGSP 35 of 47 menu

Memuat Data Halaman Menggunakan Parameter URL dari Penyimpanan dalam React Router

Sekarang kita boleh menambah produk dalam aplikasi kita. Jalankan aplikasi, tambah beberapa produk dengan butang. Jika kita kini klik pada produk itu sendiri dalam senarai, kita akan lihat bahawa setiap produk masih mempunyai halaman statik yang sama, yang akan kita tangani dalam pelajaran ini dan seterusnya.

Juga perlu dinyatakan satu perkara lagi. Secara umum, keseluruhan URL dibahagikan kepada segmen - ini ialah bahagian URL antara aksara /. Anda mungkin masih ingat bahawa ketika mencipta aplikasi ini, kami menentukan laluan 'products/:productId', jadi :productId di sini dipanggil segmen dinamik. Di hadapannya diletakkan aksara ':'. Nilai dalam segmen ini akan berubah, tepatnya mereka masuk ke dalam parameter URL (URL Params atau params), yang dihantar kepada pemuat dengan kunci tertentu, dalam kes kami ini akan menjadi params.productId.

Lihat bar alamat dalam pelayar, apabila anda klik pada produk dalam senarai. Anda akan lihat, bahawa segmen terakhir dalam bar alamat berubah, tepatnya nilai-nilai ini akan masuk ke dalam pemuat. Dan produk kami dalam penyimpanan mempunyai id unik yang dijana oleh kami, justeru kami akan memuatkan produk yang kami perlukan.

Dan sekarang setelah penyimpangan kecil, mari akhirnya berurusan dengan halaman produk, atau lebih khusus - dengan memuat data dari penyimpanan.

Mari ulangi proses yang sudah biasa. Pertama, dalam forStorage.js tambah fungsi getProduct untuk mendapatkan data produk tertentu dari penyimpanan mengikut id. Di sini kami akan menyampaikan kepada fungsi id dan, dengan itu, jika produk kami "disimpan dalam cache", maka ia akan dipaparkan tanpa kelewatan:

export async function getProduct(id) { await someNetwork(`product:${id}`); }

Seterusnya, kami perlu mendapatkan tatasusunan produk dan antara mereka mencari produk kami mengikut id yang dihantar:

export async function getProduct(id) { await someNetwork(`product:${id}`); let products = await localforage.getItem('products'); let product = products.find((product) => product.id === id); return product ?? null; }

Ambil aplikasi yang dicipta oleh anda dalam tugasan untuk pelajaran lepas. Menggunakan bahan pelajaran, buat dalam forStorage.js fungsi getStudent untuk mendapatkan data pelajar mengikut id.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak