From 4d94046cc1c55a5880c002bcf7e9c916d22c09ab Mon Sep 17 00:00:00 2001 From: dap <15891557205@163.com> Date: Tue, 1 Jul 2025 17:43:22 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=9C=A8=E7=BA=BF=E7=94=A8?= =?UTF-8?q?=E6=88=B7=20=E9=80=BB=E8=BE=91=E8=B0=83=E6=95=B4(=E5=90=8E?= =?UTF-8?q?=E7=AB=AF=E4=B8=BA=E5=81=87=E5=88=86=E9=A1=B5=20=E5=AE=9E?= =?UTF-8?q?=E9=99=85=E4=B8=8D=E5=85=B7=E5=A4=87=E5=88=86=E9=A1=B5=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=20=E6=94=B9=E4=B8=BA=E5=89=8D=E7=AB=AF=E5=88=86?= =?UTF-8?q?=E9=A1=B5)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/monitor/online/index.vue | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/apps/web-antd/src/views/monitor/online/index.vue b/apps/web-antd/src/views/monitor/online/index.vue index b557c8f9..dbde4862 100644 --- a/apps/web-antd/src/views/monitor/online/index.vue +++ b/apps/web-antd/src/views/monitor/online/index.vue @@ -10,6 +10,7 @@ import { Page } from '@vben/common-ui'; import { getVxePopupContainer } from '@vben/utils'; import { Popconfirm } from 'ant-design-vue'; +import { slice } from 'lodash-es'; import { useVbenVxeGrid } from '#/adapter/vxe-table'; import { forceLogout, onlineList } from '#/api/monitor/online'; @@ -32,16 +33,26 @@ const gridOptions: VxeGridProps = { columns, height: 'auto', keepSource: true, - pagerConfig: { - enabled: false, - }, + pagerConfig: {}, proxyConfig: { ajax: { - query: async (_, formValues = {}) => { + // 后端其实是一个假分页 返回的是全部数据 + query: async ({ page }, formValues = {}) => { const resp = await onlineList({ ...formValues, }); + // 设置在线数 onlineCount.value = resp.total; + + const { currentPage, pageSize } = page; + // 当前需要截取的index -> 当前page-1 * 每页条数 + const currentIndex = (currentPage - 1) * pageSize; + // 当前需要截取的endIndex -> currentIndex + 每页条数 + const endIndex = currentIndex + pageSize; + // 截取区间内的数据 + const sliceRows = slice(resp.rows, currentIndex, endIndex); + resp.rows = sliceRows; + return resp; }, },