From 60386edc07ef30d7b9f79994be6a6cbb4e63e734 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=89=AF?= <841369634@qq.com> Date: Fri, 7 Mar 2025 15:59:40 +0800 Subject: [PATCH] =?UTF-8?q?optimize:=20=E5=88=97=E8=A1=A8=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E7=82=B9=E5=87=BB=E6=B7=BB=E5=8A=A0=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E8=87=AA=E5=8A=A8=E8=8E=B7=E5=8F=96=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E6=A1=86=E7=9A=84=E7=84=A6=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/gui/src/view/mixins/plugin.js | 13 +++++++++++++ packages/gui/src/view/pages/plugin/git.vue | 3 ++- packages/gui/src/view/pages/plugin/overwall.vue | 12 ++++++++---- packages/gui/src/view/pages/proxy.vue | 3 ++- packages/gui/src/view/pages/server.vue | 9 ++++++--- 5 files changed, 31 insertions(+), 9 deletions(-) diff --git a/packages/gui/src/view/mixins/plugin.js b/packages/gui/src/view/mixins/plugin.js index 7142dd0..81797e2 100644 --- a/packages/gui/src/view/mixins/plugin.js +++ b/packages/gui/src/view/mixins/plugin.js @@ -142,6 +142,19 @@ export default { const dir = await this.$api.info.getLogDir() this.$api.ipc.openPath(dir) }, + async focusFirst (ref) { + if (ref && ref.length != null) { + setTimeout(() => { + if (ref.length > 0) { + try { + ref[0].$el.querySelector('.ant-input').focus() + } catch (e) { + console.error('获取输入框焦点失败:', e) + } + } + }, 100) + } + }, handleHostname (hostname) { if (this.isNotHostname(hostname)) { return '' diff --git a/packages/gui/src/view/pages/plugin/git.vue b/packages/gui/src/view/pages/plugin/git.vue index 9f65ba3..03b2518 100644 --- a/packages/gui/src/view/pages/plugin/git.vue +++ b/packages/gui/src/view/pages/plugin/git.vue @@ -50,6 +50,7 @@ export default { }, addNoProxyUrl () { this.noProxyUrls.unshift({ key: '' }) + this.focusFirst(this.$refs.noProxyUrls) }, delNoProxyUrl (item, index) { this.noProxyUrls.splice(index, 1) @@ -108,7 +109,7 @@ export default { - + diff --git a/packages/gui/src/view/pages/plugin/overwall.vue b/packages/gui/src/view/pages/plugin/overwall.vue index d9a1387..c69db7e 100644 --- a/packages/gui/src/view/pages/plugin/overwall.vue +++ b/packages/gui/src/view/pages/plugin/overwall.vue @@ -60,6 +60,7 @@ export default { }, addTarget () { this.targets.unshift({ key: '', value: 'true' }) + this.focusFirst(this.$refs.targets) }, deleteTarget (item, index) { this.targets.splice(index, 1) @@ -88,14 +89,17 @@ export default { }) } if (this.servers.length === 0) { - this.addServer() + this.addServer(false) } }, deleteServer (item, index) { this.servers.splice(index, 1) }, - addServer () { + addServer (needFocus = true) { this.servers.unshift({ key: '', value: { type: 'path' } }) + if (needFocus) { + this.focusFirst(this.$refs.servers) + } }, submitServer () { const map = {} @@ -169,7 +173,7 @@ export default { - + @@ -196,7 +200,7 @@ export default { - + diff --git a/packages/gui/src/view/pages/proxy.vue b/packages/gui/src/view/pages/proxy.vue index 668fcbc..2ddedb1 100644 --- a/packages/gui/src/view/pages/proxy.vue +++ b/packages/gui/src/view/pages/proxy.vue @@ -62,6 +62,7 @@ export default { }, addExcludeIp () { this.excludeIpList.unshift({ key: '', value: 'true' }) + this.focusFirst(this.$refs.excludeIpList) }, delExcludeIp (item, index) { this.excludeIpList.splice(index, 1) @@ -166,7 +167,7 @@ export default { - + diff --git a/packages/gui/src/view/pages/server.vue b/packages/gui/src/view/pages/server.vue index a3fb113..7b8a7e7 100644 --- a/packages/gui/src/view/pages/server.vue +++ b/packages/gui/src/view/pages/server.vue @@ -108,6 +108,7 @@ export default { }, addDnsMapping () { this.dnsMappings.unshift({ key: '', value: 'quad9' }) + this.focusFirst(this.$refs.dnsMappings) }, // whiteList @@ -123,6 +124,7 @@ export default { }, addWhiteList () { this.whiteList.unshift({ key: '', value: 'true' }) + this.focusFirst(this.$refs.whiteList) }, deleteWhiteList (item, index) { this.whiteList.splice(index, 1) @@ -144,6 +146,7 @@ export default { }, addSpeedHostname () { this.getSpeedTestConfig().hostnameList.unshift('') + this.focusFirst(this.$refs.hostnameList) }, delSpeedHostname (item, index) { this.getSpeedTestConfig().hostnameList.splice(index, 1) @@ -316,7 +319,7 @@ export default { - + @@ -374,7 +377,7 @@ export default { - + @@ -422,7 +425,7 @@ export default { - +