/** * 环境工具函数 * * 提供环境相关的配置和工具函数 */ /** * OSS 环境前缀映射 */ const OSS_ENV_PREFIX_MAP: Record = { development: 'dev', test: 'test', production: 'prod', }; /** * 获取当前 Vite 环境 */ export function getViteEnv(): string { return import.meta.env.MODE || 'development'; } /** * 获取 OSS 环境前缀 * * @returns OSS 环境前缀(dev/test/prod) */ export function getOssEnvPrefix(): string { const env = getViteEnv(); return OSS_ENV_PREFIX_MAP[env] || 'dev'; } /** * 构建完整的 OSS 目录路径 * * @param bizDir 业务目录(如:avatar, course/cover) * @returns 完整目录路径(如:dev/avatar, test/course/cover) */ export function buildOssDirPath(bizDir?: string): string { const envPrefix = getOssEnvPrefix(); if (!bizDir) { return envPrefix; } // 移除 bizDir 开头可能存在的环境前缀,避免重复 const cleanBizDir = bizDir.replace(/^(dev|test|prod)\//, ''); return `${envPrefix}/${cleanBizDir}`; }