| 123456789101112131415161718192021222324252627282930 |
- import type { ApplicationConfig, SixAppConfigRaw } from '@vben/types/global';
- const REQUEST_API_CONFIG_PREFIX = 'VITE_GLOB_API_';
- /**
- * 由 vite-inject-app-config 注入的全局配置
- */
- export function useAppConfig(
- env: Record<string, any>,
- isProduction: boolean,
- ): ApplicationConfig {
- // 生产环境下,直接使用 window._VBEN_ADMIN_PRO_APP_CONF_ 全局变量
- const config = isProduction
- ? window._VBEN_ADMIN_PRO_APP_CONF_
- : <SixAppConfigRaw>env;
- const requestBaseURL: ApplicationConfig['requestBaseURL'] = {};
- const sliceStart = REQUEST_API_CONFIG_PREFIX.length;
- for (const [key, value] of Object.entries(config)) {
- if (key.startsWith(REQUEST_API_CONFIG_PREFIX)) {
- requestBaseURL[key.slice(sliceStart).toLowerCase()] = value;
- }
- }
- return {
- apiURL: config.VITE_GLOB_API_URL,
- auth: {},
- requestBaseURL,
- };
- }
|