diff --git a/admin-frontend-vue/src/pages/account/GroupsPage.vue b/admin-frontend-vue/src/pages/account/GroupsPage.vue index 0e5ea66a..fc51646d 100644 --- a/admin-frontend-vue/src/pages/account/GroupsPage.vue +++ b/admin-frontend-vue/src/pages/account/GroupsPage.vue @@ -16,6 +16,15 @@ const editingGroup = ref(null) const summary = computed(() => shopGroupSummary(rows.value)) const isSuperAdmin = computed(() => session.isSuperAdmin) const currentUserId = computed(() => session.user?.id ?? null) +// 客户端分页:全量拉取后按页切片展示。 +const page = ref(1) +const pageSize = 10 +const total = computed(() => rows.value.length) +const pagedRows = computed(() => rows.value.slice((page.value - 1) * pageSize, page.value * pageSize)) + +function changePage(p: number) { + page.value = p +} function canEditOf(group: ShopGroupItem): boolean { if (isSuperAdmin.value) return true @@ -87,7 +96,7 @@ onMounted(loadGroups) - + @@ -113,6 +122,9 @@ onMounted(loadGroups) + { searchLoading.value = true try { const result = await searchProductCategories(keyword.value, page, PRODUCT_CATEGORY_DEFAULT_PAGE_SIZE) - searchRows.value = page === 1 ? result.items : [...searchRows.value, ...result.items] + // 分页换页模式:每页独立展示当前页结果(对齐列表统一分页交互)。 + searchRows.value = result.items searchTotal.value = result.total searchPage.value = result.page searchHasMore.value = result.hasMore @@ -158,8 +159,8 @@ function reset(): void { void loadTree() } -function loadMore(): void { - void runSearch(searchPage.value + 1) +function searchChangePage(p: number): void { + void runSearch(p) } function openCreate(parent: ProductCategoryNode | null) { @@ -350,8 +351,8 @@ onMounted(loadTree) -
- 加载更多搜索结果 + diff --git a/admin-frontend-vue/src/pages/records/RecordsSoftwareVersionPage.vue b/admin-frontend-vue/src/pages/records/RecordsSoftwareVersionPage.vue index 90838097..3468460e 100644 --- a/admin-frontend-vue/src/pages/records/RecordsSoftwareVersionPage.vue +++ b/admin-frontend-vue/src/pages/records/RecordsSoftwareVersionPage.vue @@ -1,7 +1,7 @@