mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-10-22 19:52:14 +08:00
fix: defer provider queries on startup
This commit is contained in:
@@ -18,7 +18,7 @@ import {
|
||||
} from '@mui/material'
|
||||
import { useLockFn } from 'ahooks'
|
||||
import dayjs from 'dayjs'
|
||||
import { useState } from 'react'
|
||||
import { useEffect, useState } from 'react'
|
||||
import { useTranslation } from 'react-i18next'
|
||||
import { updateProxyProvider } from 'tauri-plugin-mihomo-api'
|
||||
|
||||
@@ -52,6 +52,10 @@ export const ProviderButton = () => {
|
||||
const { refreshProxy, refreshProxyProviders } = useAppRefreshers()
|
||||
const [updating, setUpdating] = useState<Record<string, boolean>>({})
|
||||
|
||||
useEffect(() => {
|
||||
refreshProxyProviders().catch(() => {})
|
||||
}, [refreshProxyProviders])
|
||||
|
||||
// 检查是否有提供者
|
||||
const hasProviders = Object.keys(proxyProviders || {}).length > 0
|
||||
|
||||
|
||||
@@ -79,12 +79,14 @@ export const AppDataProvider = ({
|
||||
queryKey: ['getProxyProviders'],
|
||||
queryFn: calcuProxyProviders,
|
||||
...TQ_MIHOMO,
|
||||
revalidateOnMount: false,
|
||||
})
|
||||
|
||||
const { data: ruleProviders, refetch: _refetchRuleProviders } = useQuery({
|
||||
queryKey: ['getRuleProviders'],
|
||||
queryFn: getRuleProviders,
|
||||
...TQ_MIHOMO,
|
||||
revalidateOnMount: false,
|
||||
})
|
||||
|
||||
const { data: rulesData, refetch: _refetchRules } = useQuery({
|
||||
|
||||
@@ -18,6 +18,7 @@ type QueryOptions<T> = {
|
||||
retryDelay?: number | ((attempt: number) => number)
|
||||
refetchInterval?: number | false
|
||||
refetchIntervalInBackground?: boolean
|
||||
revalidateOnMount?: boolean
|
||||
refetchOnWindowFocus?: boolean
|
||||
refetchOnReconnect?: boolean
|
||||
}
|
||||
@@ -110,6 +111,7 @@ export function useQuery<T>(options: QueryOptions<T>): QueryResult<T> {
|
||||
retryDelay,
|
||||
refetchInterval,
|
||||
refetchIntervalInBackground,
|
||||
revalidateOnMount,
|
||||
refetchOnWindowFocus,
|
||||
refetchOnReconnect,
|
||||
staleTime,
|
||||
@@ -148,6 +150,7 @@ export function useQuery<T>(options: QueryOptions<T>): QueryResult<T> {
|
||||
}, interval)
|
||||
},
|
||||
revalidateOnFocus: refetchOnWindowFocus,
|
||||
revalidateOnMount,
|
||||
revalidateOnReconnect: refetchOnReconnect,
|
||||
refreshInterval: refetchInterval || 0,
|
||||
refreshWhenHidden: refetchIntervalInBackground ?? false,
|
||||
|
||||
Reference in New Issue
Block a user