From e2aa0c82382624e4bdff99c84394ce18cd94966c Mon Sep 17 00:00:00 2001 From: "gary.fu" Date: Thu, 4 Jan 2024 10:13:16 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E5=88=86=E9=A1=B5=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/main.css | 4 ++ src/components/common-table/index.vue | 24 +++++++--- src/config.js | 4 +- src/services/user/UserService.js | 4 +- src/views/tools/Tables.vue | 63 +++++++++++++++------------ 5 files changed, 61 insertions(+), 38 deletions(-) diff --git a/src/assets/main.css b/src/assets/main.css index 60fbc67..a8f1977 100644 --- a/src/assets/main.css +++ b/src/assets/main.css @@ -81,6 +81,10 @@ html, body, #app, .index-container { text-align: center; } +.no_flex { + display: block; +} + /** * slide-fade动画 */ diff --git a/src/components/common-table/index.vue b/src/components/common-table/index.vue index 396af75..0ac05f0 100644 --- a/src/components/common-table/index.vue +++ b/src/components/common-table/index.vue @@ -64,6 +64,10 @@ const props = defineProps({ type: Object, default: null }, + pageAlign: { + type: String, + default: 'center' + }, pageAttrs: { type: Object, default () { @@ -93,7 +97,16 @@ const calcColumns = computed(() => { return _columns }) -defineEmits(['pageSizeChange', 'currentPageChange']) +const emit = defineEmits(['pageSizeChange', 'currentPageChange', 'update:page']) + +const pageSizeChange = (pageSize) => { + emit('update:page', { ...props.page, pageSize }) + emit('pageSizeChange', pageSize) +} +const currentPageChange = (pageNumber) => { + emit('update:page', { ...props.page, pageNumber }) + emit('currentPageChange', pageNumber) +} @@ -126,19 +139,20 @@ defineEmits(['pageSizeChange', 'currentPageChange']) diff --git a/src/config.js b/src/config.js index 750a82b..8f01f12 100644 --- a/src/config.js +++ b/src/config.js @@ -8,11 +8,11 @@ export const PAGE_SIZE = 10 * 默认分页数据 * * @param pageSize - * @return {{pageIndex: number, pageSize: number, totalCount: number, pageNumber:number}} + * @return {{pageCount: number, pageSize: number, totalCount: number, pageNumber:number}} */ export const useDefaultPage = (pageSize = PAGE_SIZE) => { return { pageSize, - pageIndex: 1 + pageNumber: 1 } } diff --git a/src/services/user/UserService.js b/src/services/user/UserService.js index 58e10ed..a34b27d 100644 --- a/src/services/user/UserService.js +++ b/src/services/user/UserService.js @@ -13,8 +13,8 @@ import { $httpPost } from '@/vendors/axios' * 加载用户数据 * @return {{success:boolean, message:string,userList: [UserDto]}} */ -export const loadUsersResult = async config => { - const usersResult = await $httpPost('/api/users', config) +export const loadUsersResult = async (data, config) => { + const usersResult = await $httpPost('/api/users', data, config) console.info('==================', usersResult) return usersResult } diff --git a/src/views/tools/Tables.vue b/src/views/tools/Tables.vue index 6c97ff6..8750bf6 100644 --- a/src/views/tools/Tables.vue +++ b/src/views/tools/Tables.vue @@ -7,14 +7,17 @@ const page = ref(useDefaultPage()) const tableData = ref([]) -onMounted(async () => { - const usersResult = await loadUsersResult() - console.info('=================', usersResult) +const loadUsers = async () => { + const usersResult = await loadUsersResult({ page: page.value }) if (usersResult.success && usersResult.resultData) { const resultData = usersResult.resultData tableData.value = resultData.userList Object.assign(page.value, resultData.page) } +} + +onMounted(() => { + loadUsers() }) /** @@ -67,32 +70,34 @@ const buttons = ref([{