Remove app dev mode frontend routes
This commit is contained in:
@@ -7,24 +7,16 @@ import { overridesPreferences } from './preferences';
|
||||
* 从 URL 路径中解析 appCode 和模式
|
||||
* URL 格式:
|
||||
* - /app/:appCode/... (正常模式)
|
||||
* - /app-dev/:appCode/... (开发模式)
|
||||
*/
|
||||
function getAppInfoFromUrl(): { appCode: null | string; isDevMode: boolean } {
|
||||
function getAppInfoFromUrl(): { appCode: null | string } {
|
||||
const path = window.location.pathname;
|
||||
|
||||
// 先尝试匹配开发模式 /app-dev/{code}/
|
||||
const devMatch = path.match(/^\/app-dev\/([^/]+)/);
|
||||
if (devMatch?.[1]) {
|
||||
return { appCode: devMatch[1], isDevMode: true };
|
||||
}
|
||||
|
||||
// 再尝试匹配正常模式 /app/{code}/
|
||||
const appMatch = path.match(/^\/app\/([^/]+)/);
|
||||
if (appMatch?.[1]) {
|
||||
return { appCode: appMatch[1], isDevMode: false };
|
||||
return { appCode: appMatch[1] };
|
||||
}
|
||||
|
||||
return { appCode: null, isDevMode: false };
|
||||
return { appCode: null };
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -106,17 +98,15 @@ async function initApplication() {
|
||||
const baseNamespace = `${import.meta.env.VITE_APP_NAMESPACE}-${appVersion}-${env}`;
|
||||
|
||||
// 1. 检查是否为子应用模式,获取 appCode 和 applicationId
|
||||
const { appCode, isDevMode } = getAppInfoFromUrl();
|
||||
const { appCode } = getAppInfoFromUrl();
|
||||
let applicationId: string | undefined;
|
||||
|
||||
if (appCode) {
|
||||
const appInfo = await getApplicationByCode(appCode);
|
||||
applicationId = appInfo?.id;
|
||||
const modeLabel = isDevMode ? '开发模式' : '正常模式';
|
||||
console.log(`[应用初始化] 子应用${modeLabel}`, {
|
||||
console.log('[应用初始化] 子应用模式', {
|
||||
appCode,
|
||||
applicationId,
|
||||
isDevMode,
|
||||
});
|
||||
} else {
|
||||
console.log('[应用初始化] 主应用模式');
|
||||
@@ -125,12 +115,9 @@ async function initApplication() {
|
||||
// 2. 根据应用模式生成不同的 namespace,确保主应用和子应用的 localStorage 隔离
|
||||
// 主应用: vben-admin-1.0.0-dev
|
||||
// 子应用正常模式: vben-admin-1.0.0-dev-crm
|
||||
// 子应用开发模式: vben-admin-1.0.0-dev-crm-dev
|
||||
let namespace = baseNamespace;
|
||||
if (appCode) {
|
||||
namespace = isDevMode
|
||||
? `${baseNamespace}-${appCode}-dev`
|
||||
: `${baseNamespace}-${appCode}`;
|
||||
namespace = `${baseNamespace}-${appCode}`;
|
||||
}
|
||||
|
||||
// 3. 从后端加载UI配置(传递 applicationId 获取对应应用的配置)
|
||||
|
||||
Reference in New Issue
Block a user