-
- {Array.from({ length: totalPages }, (_, i) => i + 1)
- .filter((pageNumber) => pageNumber === 1 || pageNumber === totalPages || Math.abs(pageNumber - page) <= 1)
- .reduce<(number | "...")[]>((acc, pageNumber, index, pages) => {
- if (index > 0 && pageNumber - (pages[index - 1] as number) > 1) acc.push("...");
- acc.push(pageNumber);
- return acc;
- }, [])
- .map((pageNumber, index) =>
- pageNumber === "..." ? (
-
...
- ) : (
-
- ),
- )}
-
+
+
+ 共 {total} 条,第 {page}/{totalPages || 1} 页
+
+
+ {totalPages > 1 && (
+
+
+ {Array.from({ length: totalPages }, (_, i) => i + 1)
+ .filter((pageNumber) => pageNumber === 1 || pageNumber === totalPages || Math.abs(pageNumber - page) <= 1)
+ .reduce<(number | "...")[]>((acc, pageNumber, index, pages) => {
+ if (index > 0 && pageNumber - (pages[index - 1] as number) > 1) acc.push("...");
+ acc.push(pageNumber);
+ return acc;
+ }, [])
+ .map((pageNumber, index) =>
+ pageNumber === "..." ? (
+ ...
+ ) : (
+
+ ),
+ )}
+
+
+ )}
);
}
diff --git a/src/lib/utils.ts b/src/lib/utils.ts
index 3fbaf1a..14aa47a 100644
--- a/src/lib/utils.ts
+++ b/src/lib/utils.ts
@@ -32,8 +32,15 @@ export function formatDateShort(date: Date | string): string {
return format(new Date(date), "yyyy-MM-dd", { locale: zhCN });
}
-export function parsePage(searchParams: Record