import { publicGet } from '@/utils/public-request.js' /** 启动页配置缓存 key;弱网时先用上次结果渲染,避免长时间白屏 */ const CACHE_KEY = 'startup_page_settings' /** 启动配置请求超时(毫秒);比常规接口短,超时就走缓存或直接进首页,不拖慢冷启动 */ const REQUEST_TIMEOUT = 3000 /** * 获取 APP 启动页配置。 * 启动页在登录前展示,属于游客可见接口,走 publicGet 避免被登录态拦截。 * 返回结构:{ code, msg, data: { enabled, imageUrl } } */ export const getStartupPageSettings = () => { return publicGet('/api/app/startup-page', {}, REQUEST_TIMEOUT) } /** * 读取上次成功获取的启动页配置,用于弱网下立即渲染。 */ export function readCachedStartupSettings() { try { return uni.getStorageSync(CACHE_KEY) || null } catch (error) { console.warn('[startup] 读取启动页配置缓存失败:', error) return null } } /** * 缓存本次成功的启动页配置,供下次冷启动立即渲染。 */ export function cacheStartupSettings(settings) { try { uni.setStorageSync(CACHE_KEY, settings) } catch (error) { console.warn('[startup] 写入启动页配置缓存失败:', error) } } /** * 后台关闭启动页或清空图片时删除缓存,避免下次冷启动展示过期图片。 */ export function clearCachedStartupSettings() { try { uni.removeStorageSync(CACHE_KEY) } catch (error) { console.warn('[startup] 清除启动页配置缓存失败:', error) } }