From 6996d9bbe290ee9e3b3ea64372cf91b3c3830152 Mon Sep 17 00:00:00 2001 From: Allen Date: Mon, 3 Jun 2024 11:00:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=86=E5=8F=B2=E8=AE=B0=E5=BD=95=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=90=9C=E7=B4=A2=E5=85=B3=E9=94=AE=E5=AD=97=E3=80=81?= =?UTF-8?q?=E9=A1=B5=E7=A0=81=E3=80=81=E9=A1=B5=E5=A4=A7=E5=B0=8F=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E8=B7=AF=E4=BC=98=E5=8C=96=EF=BC=8C=E6=96=B9=E4=BE=BF?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E5=AE=9A=E4=BD=8D=EF=BC=8C=E5=90=8C=E6=97=B6?= =?UTF-8?q?=E4=B8=BA=E4=BA=86=E8=A7=A3=E5=86=B3=E6=94=AF=E6=8C=81kbar?= =?UTF-8?q?=E5=90=8E=E8=B7=AF=E7=94=B1=E5=8F=82=E6=95=B0=E5=92=8C=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E6=A1=86=E5=86=85=E5=AE=B9=E4=B8=8D=E4=B8=80=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/reorganize/TransferHistoryView.vue | 52 +++++++++++++------- 1 file changed, 35 insertions(+), 17 deletions(-) diff --git a/src/views/reorganize/TransferHistoryView.vue b/src/views/reorganize/TransferHistoryView.vue index 232ecc18..d4a6d00d 100644 --- a/src/views/reorganize/TransferHistoryView.vue +++ b/src/views/reorganize/TransferHistoryView.vue @@ -62,21 +62,19 @@ const headers = [ ] const pageRange = [ - { title: '25', value: 25 }, - { title: '50', value: 50 }, - { title: '100', value: 100 }, - { title: '500', value: 500 }, - { title: '1000', value: 1000 }, - { title: 'All', value: -1 }, + { title: '25', value: '25' }, + { title: '50', value: '50' }, + { title: '100', value: '100' }, + { title: '500', value: '500' }, + { title: '1000', value: '1000' }, + { title: 'All', value: '-1' }, ] // 数据列表 const dataList = ref([]) // 搜索 -const search = ref() -// 路由中有搜索参数时放到搜索框中 -if (route.query.search) search.value = route.query.search +const search = ref(route.query.search??"") // 搜索提示词列表 const searchHintList = ref([]) @@ -88,10 +86,10 @@ const loading = ref(false) const totalItems = ref(0) // 每页条数 -const itemsPerPage = ref(50) +const itemsPerPage = ref(route.query.itemsPerPage??50) // 当前页码 -const currentPage = ref(1) +const currentPage = ref(route.query.currentPage??1) // 进度条 const progressDialog = ref(false) @@ -138,9 +136,7 @@ const totalPage = computed(() => { watch( [() => currentPage.value, () => itemsPerPage.value, () => search.value], debounce(async () => { - // 清除路由参数 - if (route.query.search) router.push("/history") - await fetchData() + reloadPage() }, 1000), ) @@ -207,7 +203,7 @@ async function removeSingle(deleteSrc: boolean, deleteDest: boolean) { // 删除 await remove(currentHistory.value, deleteSrc, deleteDest) // 刷新 - fetchData() + reloadPage() } // 批量删除记录 @@ -236,7 +232,7 @@ async function removeBatch(deleteSrc: boolean, deleteDest: boolean) { // 隐藏进度条 progressDialog.value = false // 重新获取数据 - fetchData() + reloadPage() } // 响应删除操作 @@ -307,6 +303,28 @@ const dropdownItems = ref([ }, ]) +// 添加url参数 +function addUrlQuery(url: string, name: string, value: any) { + if (!url || !name || !value) return url + const separator = url.includes("?") ? "&" : "?" + return url + separator + name + "=" + value +} + +// 重载页面 +function reloadPage() { + let url = "/history" + if (search.value) { + url = addUrlQuery(url, "search", search.value) + } + if (itemsPerPage.value) { + url = addUrlQuery(url, "itemsPerPage", itemsPerPage.value) + } + if (currentPage.value) { + url = addUrlQuery(url, "currentPage", currentPage.value) + } + router.push(url) +} + // 初始加载数据 onMounted(fetchData) @@ -482,7 +500,7 @@ onMounted(fetchData) currentHistory = undefined selected = [] // 刷新 - fetchData() + reloadPage() } " @close="redoDialog = false"