From 3af127c66f23c9e3b40c127bf2924a516faa8d5a Mon Sep 17 00:00:00 2001 From: Aqr-K <95741669+Aqr-K@users.noreply.github.com> Date: Fri, 27 Dec 2024 14:29:21 +0800 Subject: [PATCH 1/4] fix(search): Input method optimization MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 合成文字输入法的支持,允许输入到中途进行暂停等操作,而不打断输入触发高频事件 --- src/views/reorganize/TransferHistoryView.vue | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/views/reorganize/TransferHistoryView.vue b/src/views/reorganize/TransferHistoryView.vue index d7203d04..5b135435 100644 --- a/src/views/reorganize/TransferHistoryView.vue +++ b/src/views/reorganize/TransferHistoryView.vue @@ -11,6 +11,7 @@ import router from '@/router' import { useDisplay } from 'vuetify' import { storageDict } from '@/api/constants' import { VIcon } from 'vuetify/lib/components/index.mjs' +import { L } from '@fullcalendar/list/internal-common' // APP const display = useDisplay() @@ -22,6 +23,9 @@ const $toast = useToast() // 路由 const route = useRoute() +// 组合输入状态 +const isComposing = ref(false) + // 重新整理对话框 const redoDialog = ref(false) @@ -149,7 +153,7 @@ const totalPage = computed(() => { return total }) -// 切换页签和搜索词 +// 切换页签 watch( [() => currentPage.value, () => itemsPerPage.value], debounce(async () => { @@ -157,12 +161,13 @@ watch( }, 1000), ) -watch( - [() => search.value], - debounce(async () => { +// 搜索监听 +watch([() => search.value, () => isComposing.value], async () => { + if (!isComposing.value) { + console.log('search: ' + search.value) reloadPage(true) - }, 1000), -) + } +}) // 获取订阅列表数据 async function fetchData(page = currentPage.value, count = itemsPerPage.value) { @@ -371,6 +376,8 @@ onMounted(fetchData) key="search_navbar" v-model="search" :items="searchHintList" + @compositionstart="isComposing = true" + @compositionend="isComposing = false" class="text-disabled" density="compact" label="搜索整理记录" From 565ebd936eac76f9ae772163a7c74b825214d4d2 Mon Sep 17 00:00:00 2001 From: Aqr-K <95741669+Aqr-K@users.noreply.github.com> Date: Fri, 27 Dec 2024 14:30:37 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20TransferHistoryView.vu?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/reorganize/TransferHistoryView.vue | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/views/reorganize/TransferHistoryView.vue b/src/views/reorganize/TransferHistoryView.vue index 5b135435..b1af0b60 100644 --- a/src/views/reorganize/TransferHistoryView.vue +++ b/src/views/reorganize/TransferHistoryView.vue @@ -10,8 +10,6 @@ import { useRoute } from 'vue-router' import router from '@/router' import { useDisplay } from 'vuetify' import { storageDict } from '@/api/constants' -import { VIcon } from 'vuetify/lib/components/index.mjs' -import { L } from '@fullcalendar/list/internal-common' // APP const display = useDisplay() @@ -23,7 +21,7 @@ const $toast = useToast() // 路由 const route = useRoute() -// 组合输入状态 +// 组合式输入法状态 const isComposing = ref(false) // 重新整理对话框 From 84652e8c82e0863e56165273d10bc7d7be4a9b6f Mon Sep 17 00:00:00 2001 From: Aqr-K <95741669+Aqr-K@users.noreply.github.com> Date: Fri, 27 Dec 2024 16:01:30 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20SearchBarView.vue?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/system/SearchBarView.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/views/system/SearchBarView.vue b/src/views/system/SearchBarView.vue index 27e058a7..612a74e8 100644 --- a/src/views/system/SearchBarView.vue +++ b/src/views/system/SearchBarView.vue @@ -20,6 +20,9 @@ const emit = defineEmits(['close']) // 搜索词 const searchWord = ref(null) +// 合成式输入法状态 +const isComposing = ref(false) + // ref const searchWordInput = ref(null) From da67088e9cc13779b625715641a83bff6ce49771 Mon Sep 17 00:00:00 2001 From: Aqr-K <95741669+Aqr-K@users.noreply.github.com> Date: Sat, 28 Dec 2024 11:54:50 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/system/SearchBarView.vue | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/views/system/SearchBarView.vue b/src/views/system/SearchBarView.vue index 612a74e8..27e058a7 100644 --- a/src/views/system/SearchBarView.vue +++ b/src/views/system/SearchBarView.vue @@ -20,9 +20,6 @@ const emit = defineEmits(['close']) // 搜索词 const searchWord = ref(null) -// 合成式输入法状态 -const isComposing = ref(false) - // ref const searchWordInput = ref(null)