From 0631b4dd1dc4a7d6b52851e3f31c705cb8923390 Mon Sep 17 00:00:00 2001
From: Leo <98382335+gaoziman@users.noreply.github.com>
Date: Wed, 9 Jul 2025 01:34:51 +0800
Subject: [PATCH] =?UTF-8?q?debug(file-management):=20=E6=B7=BB=E5=8A=A0?=
=?UTF-8?q?=E5=88=86=E9=A1=B5=E8=B0=83=E8=AF=95=E4=BF=A1=E6=81=AF=E4=BB=A5?=
=?UTF-8?q?=E6=8E=92=E6=9F=A5=E5=88=86=E9=A1=B5=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 2 +-
README.zh-CN.md | 2 +-
src/components/common/CoiPagination.vue | 472 ++++++++++++++++++++++++
src/components/common/Pagination.vue | 36 --
src/views/system/file/index.vue | 50 ++-
src/views/system/loginlog/index.vue | 11 +-
src/views/system/operlog/index.vue | 11 +-
src/views/system/picture/index.vue | 11 +-
src/views/system/role/index.vue | 11 +-
src/views/system/user/index.vue | 11 +-
10 files changed, 543 insertions(+), 74 deletions(-)
create mode 100644 src/components/common/CoiPagination.vue
delete mode 100644 src/components/common/Pagination.vue
diff --git a/README.md b/README.md
index 1a3a144..b239728 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-

+
🚀 Coi Admin
A Modern Admin Dashboard Template Based on Vue3 + Vite + TypeScript + Naive UI
diff --git a/README.zh-CN.md b/README.zh-CN.md
index 0d325c0..72a19cd 100644
--- a/README.zh-CN.md
+++ b/README.zh-CN.md
@@ -1,5 +1,5 @@
-

+
🚀 Coi Admin
基于 Vue3 + Vite + TypeScript + Naive UI 的现代化后台管理系统
diff --git a/src/components/common/CoiPagination.vue b/src/components/common/CoiPagination.vue
new file mode 100644
index 0000000..ac1b5ef
--- /dev/null
+++ b/src/components/common/CoiPagination.vue
@@ -0,0 +1,472 @@
+
+
+
+
+
+
+
diff --git a/src/components/common/Pagination.vue b/src/components/common/Pagination.vue
deleted file mode 100644
index 0253b66..0000000
--- a/src/components/common/Pagination.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/views/system/file/index.vue b/src/views/system/file/index.vue
index 8cc523e..e0e392b 100644
--- a/src/views/system/file/index.vue
+++ b/src/views/system/file/index.vue
@@ -172,20 +172,23 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
+
+
+
+ 🔧 调试信息 - 当前分页状态: Page={{ pagination.page }}, PageSize={{ pagination.pageSize }}, ItemCount={{ pagination.itemCount }}, DataLength={{ tableData.length }}
+
@@ -303,6 +306,7 @@ import { h, onMounted, ref } from 'vue'
import { NButton, NIcon, NImage, NP, NPopconfirm, NSpace, NTag, NText, NUpload, NUploadDragger } from 'naive-ui'
import type { DataTableColumns, DataTableInst, FormInst, UploadFileInfo, UploadInst } from 'naive-ui'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import { coiMsgBox, coiMsgError, coiMsgSuccess, coiMsgWarning } from '@/utils/coi'
import { usePermission } from '@/hooks/usePermission'
import { PERMISSIONS } from '@/constants/permissions'
@@ -390,6 +394,13 @@ const pagination = ref({
itemCount: 0,
})
+// 调试信息:输出初始分页设置
+console.warn('🚀 分页初始化设置:', {
+ initialPage: pagination.value.page,
+ initialPageSize: pagination.value.pageSize,
+ initialItemCount: pagination.value.itemCount,
+})
+
// 表格列定义
const columns: DataTableColumns = [
{
@@ -562,10 +573,25 @@ async function fetchData() {
fileType: selectedCategory.value === '0' ? undefined : selectedCategory.value,
}
+ // 调试信息:输出请求参数
+ console.warn('🔍 fetchData 请求参数:', {
+ page: pagination.value.page,
+ pageSize: pagination.value.pageSize,
+ params,
+ })
+
const { data } = await getSysFileList(params)
if (data) {
tableData.value = data.records
pagination.value.itemCount = data.total
+
+ // 调试信息:输出返回数据
+ console.warn('📊 fetchData 返回数据:', {
+ requestedPageSize: pagination.value.pageSize,
+ actualDataLength: data.records.length,
+ totalCount: data.total,
+ currentPage: pagination.value.page,
+ })
}
}
catch {
@@ -606,8 +632,20 @@ function handlePageChange(page: number) {
}
function handlePageSizeChange(pageSize: number) {
+ console.warn('🔄 handlePageSizeChange 触发:', {
+ oldPageSize: pagination.value.pageSize,
+ newPageSize: pageSize,
+ currentPage: pagination.value.page,
+ })
+
pagination.value.pageSize = pageSize
pagination.value.page = 1
+
+ console.warn('✅ handlePageSizeChange 更新后:', {
+ updatedPageSize: pagination.value.pageSize,
+ resetPage: pagination.value.page,
+ })
+
fetchData()
}
diff --git a/src/views/system/loginlog/index.vue b/src/views/system/loginlog/index.vue
index f1d3cb4..669536f 100644
--- a/src/views/system/loginlog/index.vue
+++ b/src/views/system/loginlog/index.vue
@@ -179,17 +179,15 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
@@ -204,6 +202,7 @@ import type { DataTableColumns, FormInst } from 'naive-ui'
import { NButton, NIcon, NPopconfirm, NSpace, NTag } from 'naive-ui'
import IconParkOutlineDelete from '~icons/icon-park-outline/delete'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import {
batchDeleteLoginLog,
deleteLoginLog,
diff --git a/src/views/system/operlog/index.vue b/src/views/system/operlog/index.vue
index 601ec93..2771ae3 100644
--- a/src/views/system/operlog/index.vue
+++ b/src/views/system/operlog/index.vue
@@ -193,17 +193,15 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
@@ -265,6 +263,7 @@ import IconParkOutlineDelete from '~icons/icon-park-outline/delete'
import IconParkOutlinePreviewOpen from '~icons/icon-park-outline/preview-open'
import CoiDialog from '@/components/common/CoiDialog.vue'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import {
batchDeleteOperLog,
clearOperLog,
diff --git a/src/views/system/picture/index.vue b/src/views/system/picture/index.vue
index 5d91de9..2f6fbce 100644
--- a/src/views/system/picture/index.vue
+++ b/src/views/system/picture/index.vue
@@ -290,17 +290,15 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
@@ -409,6 +407,7 @@ import { NButton, NIcon, NImage, NP, NPopconfirm, NSpace, NSpin, NTag, NText, NT
import type { DataTableColumns, DataTableInst, FormInst, UploadFileInfo, UploadInst } from 'naive-ui'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
import CoiDialog from '@/components/common/CoiDialog.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import { coiMsgBox, coiMsgError, coiMsgSuccess, coiMsgWarning } from '@/utils/coi'
import { usePermission } from '@/hooks/usePermission'
import { PERMISSIONS } from '@/constants/permissions'
diff --git a/src/views/system/role/index.vue b/src/views/system/role/index.vue
index 7d6526a..9101c0b 100644
--- a/src/views/system/role/index.vue
+++ b/src/views/system/role/index.vue
@@ -208,17 +208,15 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
@@ -428,6 +426,7 @@ import IconParkOutlineDelete from '~icons/icon-park-outline/delete'
import IconParkOutlineKey from '~icons/icon-park-outline/key'
import CoiDialog from '@/components/common/CoiDialog.vue'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import {
addRole,
batchDeleteRoles,
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 6847987..005cbfb 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -252,17 +252,15 @@
-
-
- 共 {{ pagination.itemCount }} 条
-
-
+
@@ -716,6 +714,7 @@ import IconParkOutlineDownloadOne from '~icons/icon-park-outline/download-one'
import IconParkOutlineFileCodeOne from '~icons/icon-park-outline/file-code-one'
import CoiDialog from '@/components/common/CoiDialog.vue'
import CoiEmpty from '@/components/common/CoiEmpty.vue'
+import CoiPagination from '@/components/common/CoiPagination.vue'
import {
addUser,
batchDeleteUsers,