mirror of
https://github.com/ChenQihan666/MyBlog-Next.git
synced 2026-08-14 11:29:33 +08:00
refactor: avoid using unnecessary class-name in the pagination component (#274)
This commit is contained in:
@@ -12,31 +12,39 @@ const { currentPage, totalPages, prevUrl, nextUrl } = Astro.props;
|
|||||||
|
|
||||||
const prev = currentPage > 1 ? "" : "disabled";
|
const prev = currentPage > 1 ? "" : "disabled";
|
||||||
const next = currentPage < totalPages ? "" : "disabled";
|
const next = currentPage < totalPages ? "" : "disabled";
|
||||||
|
const isPrevDisabled = prev === "disabled";
|
||||||
|
const isNextDisabled = next === "disabled";
|
||||||
---
|
---
|
||||||
|
|
||||||
{
|
{
|
||||||
totalPages > 1 && (
|
totalPages > 1 && (
|
||||||
<nav class="pagination-wrapper" aria-label="Pagination">
|
<nav class="pagination-wrapper" aria-label="Pagination">
|
||||||
<LinkButton
|
<LinkButton
|
||||||
disabled={prev === "disabled"}
|
disabled={isPrevDisabled}
|
||||||
href={prevUrl}
|
href={prevUrl}
|
||||||
className={`mr-4 select-none ${prev}`}
|
className={`mr-4 select-none ${prev}`}
|
||||||
ariaLabel="Previous"
|
ariaLabel="Previous"
|
||||||
>
|
>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class={`${prev}-svg`}>
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class:list={[{ "disabled-svg": isPrevDisabled }]}
|
||||||
|
>
|
||||||
<path d="M12.707 17.293 8.414 13H18v-2H8.414l4.293-4.293-1.414-1.414L4.586 12l6.707 6.707z" />
|
<path d="M12.707 17.293 8.414 13H18v-2H8.414l4.293-4.293-1.414-1.414L4.586 12l6.707 6.707z" />
|
||||||
</svg>
|
</svg>
|
||||||
Prev
|
Prev
|
||||||
</LinkButton>
|
</LinkButton>
|
||||||
{currentPage} / {totalPages}
|
{currentPage} / {totalPages}
|
||||||
<LinkButton
|
<LinkButton
|
||||||
disabled={next === "disabled"}
|
disabled={isNextDisabled}
|
||||||
href={nextUrl}
|
href={nextUrl}
|
||||||
className={`ml-4 select-none ${next}`}
|
className={`ml-4 select-none ${next}`}
|
||||||
ariaLabel="Next"
|
ariaLabel="Next"
|
||||||
>
|
>
|
||||||
Next
|
Next
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class={`${next}-svg`}>
|
<svg
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
class:list={[{ "disabled-svg": isNextDisabled }]}
|
||||||
|
>
|
||||||
<path d="m11.293 17.293 1.414 1.414L19.414 12l-6.707-6.707-1.414 1.414L15.586 11H6v2h9.586z" />
|
<path d="m11.293 17.293 1.414 1.414L19.414 12l-6.707-6.707-1.414 1.414L15.586 11H6v2h9.586z" />
|
||||||
</svg>
|
</svg>
|
||||||
</LinkButton>
|
</LinkButton>
|
||||||
|
|||||||
Reference in New Issue
Block a user