fix:修复关闭维护模式后还显示维护信息的问题

This commit is contained in:
chengqian committed 2026-08-06 19:18:48 +08:00
1 parent 800e31b041
commit 5a75c2ef98
3 files changed
+13 -3

No files matched your search

@@ -1,6 +1,15 @@
<script setup lang="ts">
import { useFormValues } from './useSettings'
const values = useFormValues()
// 关闭维护模式时自动清空提示信息和时长
function handleMaintenanceModeChange(enabled: boolean) {
values['maintenance_mode'] = enabled
if (!enabled) {
values['maintenance_message'] = ''
values['maintenance_duration'] = ''
}
}
</script>
<template>
@@ -73,7 +82,7 @@ const values = useFormValues()
<span class="switch-desc">开启后控制台显示维护提示</span>
<ASwitch
:model-value="!!values['maintenance_mode']"
@change="(v: string | number | boolean) => values['maintenance_mode'] = v"
@change="handleMaintenanceModeChange"
/>
</div>
<div class="section-grid" style="margin-top: 12px">
@@ -9,7 +9,8 @@ let timer: ReturnType<typeof setInterval> | null = null
onMounted(async () => {
await fetchSettings()
timer = setInterval(() => fetchSettings(), 30 * 60 * 1000)
// 每 60 秒强制刷新一次维护状态(绕过缓存)
timer = setInterval(() => fetchSettings(true), 60 * 1000)
})
onBeforeUnmount(() => {
@@ -30,7 +30,7 @@ const settings = ref<PublicSettings>({
let fetchPromise: Promise<void> | null = null
let lastFetchTime = 0
const CACHE_TTL = 60_000
const CACHE_TTL = 30_000 // 30秒缓存,维护模式变更时更快响应
export function usePublicSettings() {
async function fetchSettings(force = false): Promise<void> {