fix: remove dead localStorage writes and hardcoded key

- Remove unused `dns_settings_enabled` localStorage writes in
  setting-clash.tsx — state is sourced from verge config, these
  writes were never read anywhere.
- Replace hardcoded `'last_check_update'` localStorage read in
  system-info-card.tsx with exported `readLastCheckTime()` from
  the useUpdate hook, keeping the key in a single source of truth.
This commit is contained in:
Tunglies
2026-03-29 02:06:08 +08:00
parent 99bbd7ee5a
commit 7a06a5a069
3 changed files with 11 additions and 14 deletions
+6 -3
View File
@@ -13,7 +13,11 @@ import { useNavigate } from 'react-router'
import { useServiceInstaller } from '@/hooks/use-service-installer'
import { useSystemState } from '@/hooks/use-system-state'
import { useUpdate, updateLastCheckTime } from '@/hooks/use-update'
import {
useUpdate,
updateLastCheckTime,
readLastCheckTime,
} from '@/hooks/use-update'
import { useVerge } from '@/hooks/use-verge'
import { getSystemInfo } from '@/services/cmds'
import { showNotice } from '@/services/notice-service'
@@ -63,8 +67,7 @@ export const SystemInfoCard = () => {
// 如果启用了自动检查更新但没有记录,设置当前时间并延迟检查
useEffect(() => {
if (!verge?.auto_check_update) return
const stored = localStorage.getItem('last_check_update')
if (stored) return
if (readLastCheckTime() !== null) return
updateLastCheckTime()
const timeoutId = window.setTimeout(() => {
-2
View File
@@ -78,7 +78,6 @@ const SettingClash = ({ onError }: Props) => {
const handleDnsToggle = useLockFn(async (enable: boolean) => {
try {
setDnsSettingsEnabled(enable)
localStorage.setItem('dns_settings_enabled', String(enable))
await patchVerge({ enable_dns_settings: enable })
await invoke('apply_dns_config', { apply: enable })
setTimeout(() => {
@@ -86,7 +85,6 @@ const SettingClash = ({ onError }: Props) => {
}, 500)
} catch (err: any) {
setDnsSettingsEnabled(!enable)
localStorage.setItem('dns_settings_enabled', String(!enable))
showNotice.error(err)
await patchVerge({ enable_dns_settings: !enable }).catch(() => {})
throw err