Sivutuksen Lisääminen Next.js-sovellukseen
Jotta käyttäjät voivat siirtyä eri sivujen välillä ja tarkastella kaikkia laskuja, ota käyttöön sivutus URL-parametrien avulla, samalla tavalla kuin hakutoiminnossa.
Takaisin projektiin
Vaihe 1
- Siirry
Pagination-komponenttiin, jossa huomaat sen olevan asiakaskomponentti. Tietokantasalaisuuksien suojaamiseksi vältä tietojen hakemista asiakaspuolella. Hae tiedot palvelimella ja välitä ne komponentille propina; - Tiedostossa
app/dashboard/invoices/page.tsxtuo uusi funktio nimeltäfetchInvoicesPagesja välitä hakukyselysearchParams-parametrina:fetchInvoicesPageslaskee sivujen kokonaismäärän hakukyselyn perusteella. Esimerkiksi, jos hakutuloksia on 12 ja näytetään 6 per sivu, sivujen kokonaismäärä on 2.
- Välitä
totalPages-proppi<Pagination/>-komponentille.
Vaihe 2
- Siirry tiedostoon
app/ui/invoices/pagination.tsx; - Tuo
usePathname- jauseSearchParams-hookit; - Käytä näitä hookeja nykyisen sivun hakemiseen ja uuden sivun asettamiseen;
- Poista kommentointi tämän komponentin koodista.
Huomio
Sovelluksesi saattaa tilapäisesti lakata toimimasta, koska
<Pagination/>-logiikkaa ei ole vielä toteutettu. Työstämme sitä myöhemmin.
Vaihe 3
- Luo
<Pagination>-komponentin sisälle uusi funktio nimeltäcreatePageURL; - Käytä
URLSearchParams-rakennetta uuden sivunumeron asettamiseen, kuten hakutoiminnossa; - Hyödynnä
pathName-muuttujaa URL-osoitteen muodostamiseen; - Poista kommentointi
allPages-muuttujasta.
Vaihe 4
Viimeinen vaihe – kun käyttäjä syöttää uuden hakukyselyn, sivunumero on tärkeää palauttaa arvoon 1. Tämän saavuttamiseksi päivitä handleSearch-funktio tiedostossa app/ui/search.tsx.
Käytännössä
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 2.08
Sivutuksen Lisääminen Next.js-sovellukseen
Pyyhkäise näyttääksesi valikon
Jotta käyttäjät voivat siirtyä eri sivujen välillä ja tarkastella kaikkia laskuja, ota käyttöön sivutus URL-parametrien avulla, samalla tavalla kuin hakutoiminnossa.
Takaisin projektiin
Vaihe 1
- Siirry
Pagination-komponenttiin, jossa huomaat sen olevan asiakaskomponentti. Tietokantasalaisuuksien suojaamiseksi vältä tietojen hakemista asiakaspuolella. Hae tiedot palvelimella ja välitä ne komponentille propina; - Tiedostossa
app/dashboard/invoices/page.tsxtuo uusi funktio nimeltäfetchInvoicesPagesja välitä hakukyselysearchParams-parametrina:fetchInvoicesPageslaskee sivujen kokonaismäärän hakukyselyn perusteella. Esimerkiksi, jos hakutuloksia on 12 ja näytetään 6 per sivu, sivujen kokonaismäärä on 2.
- Välitä
totalPages-proppi<Pagination/>-komponentille.
Vaihe 2
- Siirry tiedostoon
app/ui/invoices/pagination.tsx; - Tuo
usePathname- jauseSearchParams-hookit; - Käytä näitä hookeja nykyisen sivun hakemiseen ja uuden sivun asettamiseen;
- Poista kommentointi tämän komponentin koodista.
Huomio
Sovelluksesi saattaa tilapäisesti lakata toimimasta, koska
<Pagination/>-logiikkaa ei ole vielä toteutettu. Työstämme sitä myöhemmin.
Vaihe 3
- Luo
<Pagination>-komponentin sisälle uusi funktio nimeltäcreatePageURL; - Käytä
URLSearchParams-rakennetta uuden sivunumeron asettamiseen, kuten hakutoiminnossa; - Hyödynnä
pathName-muuttujaa URL-osoitteen muodostamiseen; - Poista kommentointi
allPages-muuttujasta.
Vaihe 4
Viimeinen vaihe – kun käyttäjä syöttää uuden hakukyselyn, sivunumero on tärkeää palauttaa arvoon 1. Tämän saavuttamiseksi päivitä handleSearch-funktio tiedostossa app/ui/search.tsx.
Käytännössä
Kiitos palautteestasi!