/* * @Author: fangqing lfangqing@126.com * @Date: 2023-10-17 13:45:04 * @Description: 全局config 配置文件 * @LastEditors: fangqing lfangqing@126.com * @LastEditTime: 2023-10-26 17:35:44 */ // 获取环境变量 const ENV = import.meta.env // 配置文件 let config = { } // 默认配置文件 const configSource = { appCode: ENV.VITE_APP_CODE, // 项目标识代码 projectCode: `${ENV.VITE_APP_CODE}_${ENV.VITE_APP_ENV}`, // 项目名 projectName: ENV.VITE_APP_NAME, // 资源base地址 base: ENV.VITE_BASE, // 接口代理URL路径 baseUrl: ENV.VITE_BASE_URL, // 模拟数据接口路径 mockBaseUrl: ENV.VITE_BASE_MOCK_URL, // 服务端接口路径 serverUrl: ENV.VITE_BASE_SERVER_URL, //国际化默认语言 globalI18n: "zh-cn", // 客户端id clientId: "pcManageId", // 客户端密钥 clientSecret: "pcManageSecret", } /** * @description: 重置全局配置 * @return {*} 局默认配置 configSource */ const resetConfig = () => { config = { ...configSource } return config } resetConfig() /** * @description: 设置全局配置 * @param {*} cfg 配置项 * @return {*} 新的全局配置 */ const setConfig = cfg => { config = Object.assign(config, cfg) return config } /** * @description: 获取全局配置 * @param {*} key 配置项 * @return {*} 新的全局配置项 */ const getConfig = key => { if (typeof key === "string") { const arr = key.split(".") if (arr && arr.length) { let data = config arr.forEach(v => { if (data && typeof data[v] !== "undefined") { data = data[v] } else { data = null } }) return data } } if (Array.isArray(key)) { const data = config if (key && key.length > 1) { let res = {} key.forEach(v => { if (data && typeof data[v] !== "undefined") { res[v] = data[v] } else { res[v] = null } }) return res } return data[key] } return { ...config } } export { getConfig, setConfig, resetConfig }