Remove app dev mode frontend routes

This commit is contained in:
2026-06-09 00:29:12 +08:00
parent a89b24f97a
commit 0303ba977e
6 changed files with 24 additions and 126 deletions
+6 -19
View File
@@ -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 获取对应应用的配置)