From bf149afbbbf22d3127c25ec23cb05e95d9b15e65 Mon Sep 17 00:00:00 2001 From: zhongzm Date: Fri, 14 Feb 2025 11:59:42 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E7=BB=88=E7=AB=AF=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E7=95=8C=E9=9D=A2=E6=90=9C=E7=B4=A2=E6=A0=8F=E9=87=8D?= =?UTF-8?q?=E7=BD=AE=E5=8A=9F=E8=83=BD=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/device/terminal/index.vue | 17 ++++++-- .../terminal/modules/terminal-search.vue | 39 ++++++++++--------- 2 files changed, 34 insertions(+), 22 deletions(-) diff --git a/src/views/device/terminal/index.vue b/src/views/device/terminal/index.vue index e718f4d..97cc9e5 100644 --- a/src/views/device/terminal/index.vue +++ b/src/views/device/terminal/index.vue @@ -58,7 +58,7 @@ import { useElementSize } from '@vueuse/core'; import { fetchTerminalList } from '@/service/api/auth'; import { Card as ACard, Table as ATable, Tag as ATag } from 'ant-design-vue'; import TerminalSearch from './modules/terminal-search.vue'; -import { formatStorage, formatTime } from '@/utils/units'; +import { formatStorage } from '@/utils/units'; import { useI18n } from 'vue-i18n'; const { t } = useI18n(); @@ -115,7 +115,6 @@ const { getData, mobilePagination, searchParams, - resetSearchParams } = useTable({ apiFn: async (params: Api.Device.TerminalDeviceParams) => { try { @@ -256,9 +255,19 @@ const handleSearch = () => { getData(); }; -// 添加重置处理函数 +// 修改重置处理函数 const handleReset = () => { - resetSearchParams(); + // 保存当前的 pageSize + const currentPageSize = searchParams.pageSize; + + // 重置搜索参数 + searchParams.clientName = ''; + searchParams.clientDeviceType = ''; + searchParams.clientMac = ''; + searchParams.pageNum = 1; + searchParams.pageSize = currentPageSize; + + // 重新获取数据 getData(); }; diff --git a/src/views/device/terminal/modules/terminal-search.vue b/src/views/device/terminal/modules/terminal-search.vue index 0afb83b..28513e1 100644 --- a/src/views/device/terminal/modules/terminal-search.vue +++ b/src/views/device/terminal/modules/terminal-search.vue @@ -3,25 +3,25 @@ - - - - - - - - - + + + + + + + + + import { Form as AForm, FormItem as AFormItem, Input as AInput, Button as AButton, Space as ASpace, Card as ACard } from 'ant-design-vue'; import { useI18n } from 'vue-i18n'; +import { computed } from 'vue'; + const { t } = useI18n(); + interface Props { model: { clientName?: string; @@ -69,18 +72,18 @@ const props = withDefaults(defineProps(), { const emit = defineEmits(['update:model', 'search', 'reset']); +// 使用计算属性来处理双向绑定 +const formModel = computed({ + get: () => props.model, + set: (val) => emit('update:model', val) +}); + const search = () => { emit('search'); }; const reset = () => { - emit('update:model', { - ...props.model, - clientName: '', - clientDeviceType: '', - clientMac: '', - pageNum: 1 - }); + // 只触发重置事件 emit('reset'); };