Skip to content

useSystemSettingsManager ​

无需登录的系统级设置:拉取、缓存、周期刷新(与 useGlobalSettingsManager 类似,但不依赖 token)。

前置依赖 ​

参数名类型说明
env.vueVue 运行时ref / computed / 生命周期
env.host定时器 + now周期刷新
env.storageuseStorage默认键 syssettings:data / meta

函数签名 ​

typescript
function useSystemSettingsManager<T>(
  options: UseSystemSettingsManagerOptions<T>,
  env: UseSystemSettingsManagerEnvironment,
): UseSystemSettingsManagerReturn<T>

interface UseSystemSettingsManagerOptions<T> {
  fetchSettingsFn: () => Promise<FetchSystemSettingsResult<T>>
  storageKeys?: { data?: string; meta?: string }
  autoFetchOnMount?: boolean
  refreshIntervalMs?: number
}

参数 ​

参数名类型必填说明
fetchSettingsFnfunction是拉系统设置,无需 token
autoFetchOnMountboolean否默认 true
refreshIntervalMsnumber否可选周期刷新

返回值 ​

与 useGlobalSettingsManager 相同:settings、version、refresh、clear 等。

工作原理 ​

  1. 挂载水合本地缓存,autoFetchOnMount 时 refresh。
  2. in-flight 去重 + version 对比跳过无效写入。
  3. 可选定时器周期 refresh。
  4. 卸载清除 interval。

异常 ​

失败写入 error,不抛出。