优化调整

This commit is contained in:
zhongluofeng
2026-08-14 17:47:06 +08:00
parent 6c7897bf47
commit 7d49a7395f
50 changed files with 2805 additions and 259 deletions
+15 -10
View File
@@ -328,9 +328,9 @@ const init = async () => {
await store.waitForApi()
store.refreshVersion()
loadProxiesWithError()
// 若自动切换已开启,恢复定时器
// 若自动切换已开启,恢复定时器(静默,不弹通知、不立即执行)
if (autoSwitchEnabled.value) {
startAutoSwitch()
startAutoSwitch(false, false)
}
}
} finally {
@@ -370,10 +370,10 @@ watch(running, async (val, old) => {
await store.waitForApi()
await store.refreshVersion()
await loadProxiesWithError()
// 自动切换若已开启,mihomo 启动/重启后恢复定时器
// 自动切换若已开启,mihomo 启动/重启后恢复定时器(静默,不弹通知)
// handleStop 会停掉旧定时器,此处统一接管启动路径,避免开关显示开但功能静默失效)
if (autoSwitchEnabled.value) {
startAutoSwitch()
startAutoSwitch(false)
}
}
})
@@ -495,16 +495,21 @@ const quickSwitchNode = async (name: string) => {
}
// ===== 自动切换节点 =====
const startAutoSwitch = () => {
const startAutoSwitch = (notify = true, immediate = true) => {
stopAutoSwitch()
if (!autoSwitchEnabled.value) return
const ms = autoSwitchInterval.value * 60 * 1000
autoSwitchTimer = setInterval(runAutoSwitch, ms)
toast.success('自动切换已开启', {
description: `${autoSwitchInterval.value} 分钟测试并切换至最优节点`
})
// 立即执行一次
runAutoSwitch()
// 仅用户主动开启时提示;模块挂载/内核重启恢复定时器时静默,避免每次切换都弹通知
if (notify) {
toast.success('自动切换已开启', {
description: `${autoSwitchInterval.value} 分钟测试并切换至最优节点`
})
}
// 立即执行一次(用户主动开启/调整时立即生效;进入模块恢复时跳过,避免每次进入都测速切换)
if (immediate) {
runAutoSwitch()
}
}
const stopAutoSwitch = () => {