diff --git a/easyflow-ui-admin/app/.env.analyze b/easyflow-ui-admin/app/.env.analyze index ffafa8d..84c9df0 100644 --- a/easyflow-ui-admin/app/.env.analyze +++ b/easyflow-ui-admin/app/.env.analyze @@ -1,7 +1,7 @@ # public path -VITE_BASE=/ +VITE_BASE=/flow/ # Basic interface address SPA -VITE_GLOB_API_URL=/api +VITE_GLOB_API_URL=/flow VITE_VISUALIZER=true diff --git a/easyflow-ui-admin/app/.env.development b/easyflow-ui-admin/app/.env.development index 54e5744..8f2d43d 100644 --- a/easyflow-ui-admin/app/.env.development +++ b/easyflow-ui-admin/app/.env.development @@ -1,10 +1,10 @@ # 端口号 VITE_PORT=5090 -VITE_BASE=/ +VITE_BASE=/flow/ # 接口地址 -VITE_GLOB_API_URL=http://127.0.0.1:8111 +VITE_GLOB_API_URL=/flow # 是否打开 devtools,true 为打开,false 为关闭 VITE_DEVTOOLS=false diff --git a/easyflow-ui-admin/app/vite.config.mts b/easyflow-ui-admin/app/vite.config.mts index 3510ba8..f769885 100644 --- a/easyflow-ui-admin/app/vite.config.mts +++ b/easyflow-ui-admin/app/vite.config.mts @@ -20,13 +20,17 @@ export default defineConfig(async () => { ], server: { proxy: { - '/api': { + '/flow/api': { changeOrigin: true, - rewrite: (path) => path.replace(/^\/api/, ''), - // mock代理目标地址 - target: 'http://localhost:5320/api', + rewrite: (path) => path.replace(/^\/flow/, ''), + target: 'http://127.0.0.1:8111', ws: true, }, + '/flow/userCenter': { + changeOrigin: true, + rewrite: (path) => path.replace(/^\/flow/, ''), + target: 'http://127.0.0.1:8111', + }, }, }, }, diff --git a/easyflow-ui-admin/internal/vite-config/src/plugins/inject-app-loading/index.ts b/easyflow-ui-admin/internal/vite-config/src/plugins/inject-app-loading/index.ts index 6aa8862..1923a56 100644 --- a/easyflow-ui-admin/internal/vite-config/src/plugins/inject-app-loading/index.ts +++ b/easyflow-ui-admin/internal/vite-config/src/plugins/inject-app-loading/index.ts @@ -20,6 +20,7 @@ async function viteInjectAppLoadingPlugin( const { version } = await readPackageJSON(process.cwd()); const envRaw = isBuild ? 'prod' : 'dev'; const cacheName = `'${env.VITE_APP_NAMESPACE}-${version}-${envRaw}-preferences-theme'`; + const appBase = JSON.stringify(ensureTrailingSlash(env.VITE_BASE || '/')); // 获取缓存的主题 // 保证黑暗主题下,刷新页面时,loading也是黑暗主题 @@ -29,7 +30,7 @@ async function viteInjectAppLoadingPlugin( document.documentElement.classList.toggle('dark', /dark/.test(theme)); setTimeout(() => { if (/dark/.test(theme)) { - document.querySelector('#__app-loading__ img').src = '/logoDark.svg'; + document.querySelector('#__app-loading__ img').src = ${appBase} + 'logoDark.svg'; } }) @@ -68,4 +69,8 @@ async function getLoadingRawByHtmlTemplate(loadingTemplate: string) { return await fsp.readFile(appLoadingPath, 'utf8'); } +function ensureTrailingSlash(path: string) { + return path.endsWith('/') ? path : `${path}/`; +} + export { viteInjectAppLoadingPlugin }; diff --git a/easyflow-ui-admin/packages/@core/preferences/src/config.ts b/easyflow-ui-admin/packages/@core/preferences/src/config.ts index a60ef24..d1c0d68 100644 --- a/easyflow-ui-admin/packages/@core/preferences/src/config.ts +++ b/easyflow-ui-admin/packages/@core/preferences/src/config.ts @@ -1,5 +1,7 @@ import type { Preferences } from './types'; +const assetBase = import.meta.env.BASE_URL || '/'; + const defaultPreferences: Preferences = { app: { accessMode: 'frontend', @@ -65,10 +67,10 @@ const defaultPreferences: Preferences = { logo: { enable: true, fit: 'contain', - source: '/logo.svg', - sourceDark: '/logoDark.svg', - sourceMini: '/logoMini.svg', - sourceMiniDark: '/logoMiniDark.svg', + source: `${assetBase}logo.svg`, + sourceDark: `${assetBase}logoDark.svg`, + sourceMini: `${assetBase}logoMini.svg`, + sourceMiniDark: `${assetBase}logoMiniDark.svg`, }, navigation: { accordion: true,