16 changed files with 1675 additions and 74 deletions
@ -0,0 +1,796 @@
@@ -0,0 +1,796 @@
|
||||
// 第一阶段:直接路由-API映射关系
|
||||
// 此文件由 route-mapping-plugin 在构建时生成
|
||||
// 收集页面和弹窗组件的直接API调用关系
|
||||
// 请勿手动修改
|
||||
|
||||
export const directRouteMappings = { |
||||
// 第一层:页面组件的数据操作API
|
||||
pageMappings: [ |
||||
{ |
||||
"route": "/user-management", |
||||
"routeName": "UserManagement", |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getUsers", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 69 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "updateUser", |
||||
"arguments": [ |
||||
null, |
||||
"userForm" |
||||
], |
||||
"line": 139 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "createUser", |
||||
"arguments": [ |
||||
"userForm" |
||||
], |
||||
"line": 141 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "deleteUser", |
||||
"arguments": [ |
||||
"userId" |
||||
], |
||||
"line": 153 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadUsers", |
||||
"loadRoles", |
||||
"handleSearch", |
||||
"handleFilter", |
||||
"changePage", |
||||
"handlePageSizeChange", |
||||
"handleJumpPage", |
||||
"editUser", |
||||
"submitUser", |
||||
"deleteUser", |
||||
"assignRoles", |
||||
"closeModal", |
||||
"formatDate" |
||||
] |
||||
}, |
||||
{ |
||||
"route": "/user-profile", |
||||
"routeName": "UserProfile", |
||||
"component": "UserProfile", |
||||
"module": "user-profile", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCurrentUser", |
||||
"arguments": [ |
||||
"token" |
||||
], |
||||
"line": 45 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadUserProfile", |
||||
"refreshProfile", |
||||
"changePassword", |
||||
"forceChangePassword", |
||||
"onPasswordChangeSuccess", |
||||
"goToLogin", |
||||
"formatDate", |
||||
"getStatusText", |
||||
"getStatusClass" |
||||
] |
||||
}, |
||||
{ |
||||
"route": "/role-management", |
||||
"routeName": "RoleManagement", |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "getRoles", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 54 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "updateRole", |
||||
"arguments": [ |
||||
null, |
||||
"roleForm" |
||||
], |
||||
"line": 108 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "createRole", |
||||
"arguments": [ |
||||
"roleForm" |
||||
], |
||||
"line": 118 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "deleteRole", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 142 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"handleSearch", |
||||
"loadRoles", |
||||
"createNewRole", |
||||
"editRole", |
||||
"saveRole", |
||||
"deleteRole", |
||||
"resetForm", |
||||
"handleCurrentChange", |
||||
"handlePageSizeChange", |
||||
"handleJumpPage", |
||||
"formatDate", |
||||
"assignPermissions", |
||||
"handlePermissionsUpdated" |
||||
] |
||||
} |
||||
], |
||||
|
||||
// 第二层:弹窗组件的数据操作API
|
||||
modalMappings: [ |
||||
{ |
||||
"component": "LoginModal", |
||||
"path": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\LoginModal.vue", |
||||
"module": "user-management", |
||||
"layer": "modal", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "login", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 106 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 209 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 230 |
||||
} |
||||
], |
||||
"methods": [] |
||||
}, |
||||
{ |
||||
"component": "PasswordChangeModal", |
||||
"path": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\PasswordChangeModal.vue", |
||||
"module": "user-management", |
||||
"layer": "modal", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getPasswordPolicy", |
||||
"arguments": [], |
||||
"line": 97 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "validatePassword", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 156 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "changePassword", |
||||
"arguments": [ |
||||
"requestData" |
||||
], |
||||
"line": 314 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadPasswordPolicy", |
||||
"validatePassword", |
||||
"updateRequirements", |
||||
"calculatePasswordStrength", |
||||
"validateConfirmPassword", |
||||
"handleSubmit", |
||||
"handleClose", |
||||
"handleOverlayClick", |
||||
"clearCurrentPasswordError", |
||||
"clearNewPasswordError", |
||||
"clearConfirmPasswordError", |
||||
"handleNewPasswordInput", |
||||
"handleConfirmPasswordInput", |
||||
"resetFormState" |
||||
] |
||||
} |
||||
], |
||||
|
||||
// 分析信息
|
||||
analysisInfo: { |
||||
phase: 'phase1', |
||||
description: '第一阶段:收集直接映射关系', |
||||
timestamp: new Date().toISOString(), |
||||
pageCount: 3, |
||||
modalCount: 2, |
||||
totalApiCalls: 15 |
||||
} |
||||
} |
||||
|
||||
// 按模块分组的映射
|
||||
export const moduleMappings = { |
||||
"user-management": { |
||||
"pages": [ |
||||
{ |
||||
"route": "/user-management", |
||||
"routeName": "UserManagement", |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getUsers", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 69 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "updateUser", |
||||
"arguments": [ |
||||
null, |
||||
"userForm" |
||||
], |
||||
"line": 139 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "createUser", |
||||
"arguments": [ |
||||
"userForm" |
||||
], |
||||
"line": 141 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "deleteUser", |
||||
"arguments": [ |
||||
"userId" |
||||
], |
||||
"line": 153 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadUsers", |
||||
"loadRoles", |
||||
"handleSearch", |
||||
"handleFilter", |
||||
"changePage", |
||||
"handlePageSizeChange", |
||||
"handleJumpPage", |
||||
"editUser", |
||||
"submitUser", |
||||
"deleteUser", |
||||
"assignRoles", |
||||
"closeModal", |
||||
"formatDate" |
||||
] |
||||
} |
||||
], |
||||
"modals": [ |
||||
{ |
||||
"component": "LoginModal", |
||||
"path": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\LoginModal.vue", |
||||
"module": "user-management", |
||||
"layer": "modal", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "login", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 106 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 209 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 230 |
||||
} |
||||
], |
||||
"methods": [] |
||||
}, |
||||
{ |
||||
"component": "PasswordChangeModal", |
||||
"path": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\PasswordChangeModal.vue", |
||||
"module": "user-management", |
||||
"layer": "modal", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getPasswordPolicy", |
||||
"arguments": [], |
||||
"line": 97 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "validatePassword", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 156 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "changePassword", |
||||
"arguments": [ |
||||
"requestData" |
||||
], |
||||
"line": 314 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadPasswordPolicy", |
||||
"validatePassword", |
||||
"updateRequirements", |
||||
"calculatePasswordStrength", |
||||
"validateConfirmPassword", |
||||
"handleSubmit", |
||||
"handleClose", |
||||
"handleOverlayClick", |
||||
"clearCurrentPasswordError", |
||||
"clearNewPasswordError", |
||||
"clearConfirmPasswordError", |
||||
"handleNewPasswordInput", |
||||
"handleConfirmPasswordInput", |
||||
"resetFormState" |
||||
] |
||||
} |
||||
] |
||||
}, |
||||
"user-profile": { |
||||
"pages": [ |
||||
{ |
||||
"route": "/user-profile", |
||||
"routeName": "UserProfile", |
||||
"component": "UserProfile", |
||||
"module": "user-profile", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCurrentUser", |
||||
"arguments": [ |
||||
"token" |
||||
], |
||||
"line": 45 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"loadUserProfile", |
||||
"refreshProfile", |
||||
"changePassword", |
||||
"forceChangePassword", |
||||
"onPasswordChangeSuccess", |
||||
"goToLogin", |
||||
"formatDate", |
||||
"getStatusText", |
||||
"getStatusClass" |
||||
] |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"role-management": { |
||||
"pages": [ |
||||
{ |
||||
"route": "/role-management", |
||||
"routeName": "RoleManagement", |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"layer": "page", |
||||
"apiCalls": [ |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "getRoles", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 54 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "updateRole", |
||||
"arguments": [ |
||||
null, |
||||
"roleForm" |
||||
], |
||||
"line": 108 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "createRole", |
||||
"arguments": [ |
||||
"roleForm" |
||||
], |
||||
"line": 118 |
||||
}, |
||||
{ |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "deleteRole", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 142 |
||||
} |
||||
], |
||||
"methods": [ |
||||
"handleSearch", |
||||
"loadRoles", |
||||
"createNewRole", |
||||
"editRole", |
||||
"saveRole", |
||||
"deleteRole", |
||||
"resetForm", |
||||
"handleCurrentChange", |
||||
"handlePageSizeChange", |
||||
"handleJumpPage", |
||||
"formatDate", |
||||
"assignPermissions", |
||||
"handlePermissionsUpdated" |
||||
] |
||||
} |
||||
], |
||||
"modals": [] |
||||
} |
||||
} |
||||
|
||||
// 按API路径分组的映射
|
||||
export const apiPathMappings = { |
||||
"userService.getUsers": { |
||||
"pages": [ |
||||
{ |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"route": "/user-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getUsers", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 69 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"userService.updateUser": { |
||||
"pages": [ |
||||
{ |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"route": "/user-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "updateUser", |
||||
"arguments": [ |
||||
null, |
||||
"userForm" |
||||
], |
||||
"line": 139 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"userService.createUser": { |
||||
"pages": [ |
||||
{ |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"route": "/user-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "createUser", |
||||
"arguments": [ |
||||
"userForm" |
||||
], |
||||
"line": 141 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"userService.deleteUser": { |
||||
"pages": [ |
||||
{ |
||||
"component": "UserManagement", |
||||
"module": "user-management", |
||||
"route": "/user-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "deleteUser", |
||||
"arguments": [ |
||||
"userId" |
||||
], |
||||
"line": 153 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"userService.getCurrentUser": { |
||||
"pages": [ |
||||
{ |
||||
"component": "UserProfile", |
||||
"module": "user-profile", |
||||
"route": "/user-profile", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCurrentUser", |
||||
"arguments": [ |
||||
"token" |
||||
], |
||||
"line": 45 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"roleService.getRoles": { |
||||
"pages": [ |
||||
{ |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"route": "/role-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "getRoles", |
||||
"arguments": [ |
||||
null, |
||||
null |
||||
], |
||||
"line": 54 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"roleService.updateRole": { |
||||
"pages": [ |
||||
{ |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"route": "/role-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "updateRole", |
||||
"arguments": [ |
||||
null, |
||||
"roleForm" |
||||
], |
||||
"line": 108 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"roleService.createRole": { |
||||
"pages": [ |
||||
{ |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"route": "/role-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "createRole", |
||||
"arguments": [ |
||||
"roleForm" |
||||
], |
||||
"line": 118 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"roleService.deleteRole": { |
||||
"pages": [ |
||||
{ |
||||
"component": "RoleManagement", |
||||
"module": "role-management", |
||||
"route": "/role-management", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "roleService", |
||||
"method": "deleteRole", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 142 |
||||
} |
||||
} |
||||
], |
||||
"modals": [] |
||||
}, |
||||
"userService.login": { |
||||
"pages": [], |
||||
"modals": [ |
||||
{ |
||||
"component": "LoginModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\LoginModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "login", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 106 |
||||
} |
||||
} |
||||
] |
||||
}, |
||||
"userService.getCaptcha": { |
||||
"pages": [], |
||||
"modals": [ |
||||
{ |
||||
"component": "LoginModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\LoginModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 209 |
||||
} |
||||
}, |
||||
{ |
||||
"component": "LoginModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\LoginModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getCaptcha", |
||||
"arguments": [], |
||||
"line": 230 |
||||
} |
||||
} |
||||
] |
||||
}, |
||||
"userService.getPasswordPolicy": { |
||||
"pages": [], |
||||
"modals": [ |
||||
{ |
||||
"component": "PasswordChangeModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\PasswordChangeModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "getPasswordPolicy", |
||||
"arguments": [], |
||||
"line": 97 |
||||
} |
||||
} |
||||
] |
||||
}, |
||||
"userService.validatePassword": { |
||||
"pages": [], |
||||
"modals": [ |
||||
{ |
||||
"component": "PasswordChangeModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\PasswordChangeModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "validatePassword", |
||||
"arguments": [ |
||||
null |
||||
], |
||||
"line": 156 |
||||
} |
||||
} |
||||
] |
||||
}, |
||||
"userService.changePassword": { |
||||
"pages": [], |
||||
"modals": [ |
||||
{ |
||||
"component": "PasswordChangeModal", |
||||
"module": "user-management", |
||||
"route": "D:\\aigc\\manta\\gofaster\\app\\src\\renderer\\modules\\user-management\\components\\PasswordChangeModal.vue", |
||||
"apiCall": { |
||||
"type": "service", |
||||
"service": "userService", |
||||
"method": "changePassword", |
||||
"arguments": [ |
||||
"requestData" |
||||
], |
||||
"line": 314 |
||||
} |
||||
} |
||||
] |
||||
} |
||||
} |
||||
|
||||
export default directRouteMappings |
@ -0,0 +1,92 @@
@@ -0,0 +1,92 @@
|
||||
# 测试路由同步修复效果 |
||||
# 检查direct-route-mappings.js文件读取和路由映射生成问题 |
||||
|
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host " 路由同步修复测试脚本" -ForegroundColor Cyan |
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host "" |
||||
|
||||
# 设置编码 |
||||
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 |
||||
$OutputEncoding = [System.Text.Encoding]::UTF8 |
||||
|
||||
# 检查文件是否存在 |
||||
Write-Host "🔍 检查关键文件..." -ForegroundColor Yellow |
||||
|
||||
$mappingFile = "app\src\renderer\modules\route-sync\direct-route-mappings.js" |
||||
if (Test-Path $mappingFile) { |
||||
Write-Host "✅ direct-route-mappings.js 文件存在" -ForegroundColor Green |
||||
|
||||
# 检查文件内容 |
||||
$content = Get-Content $mappingFile -Raw |
||||
if ($content -match "export const directRouteMappings") { |
||||
Write-Host "✅ 文件包含正确的导出" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ 文件缺少正确的导出" -ForegroundColor Red |
||||
} |
||||
|
||||
if ($content -match "pageMappings") { |
||||
Write-Host "✅ 文件包含pageMappings" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ 文件缺少pageMappings" -ForegroundColor Red |
||||
} |
||||
} else { |
||||
Write-Host "❌ direct-route-mappings.js 文件不存在" -ForegroundColor Red |
||||
} |
||||
|
||||
# 检查RouteConfig文件 |
||||
$configFile = "app\src\renderer\modules\route-sync\RouteConfig.js" |
||||
if (Test-Path $configFile) { |
||||
Write-Host "✅ RouteConfig.js 文件存在" -ForegroundColor Green |
||||
|
||||
$configContent = Get-Content $configFile -Raw |
||||
if ($configContent -match "defaultApiMappings") { |
||||
Write-Host "✅ RouteConfig包含defaultApiMappings" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ RouteConfig缺少defaultApiMappings" -ForegroundColor Red |
||||
} |
||||
} else { |
||||
Write-Host "❌ RouteConfig.js 文件不存在" -ForegroundColor Red |
||||
} |
||||
|
||||
Write-Host "" |
||||
Write-Host "🔧 测试路由映射生成..." -ForegroundColor Yellow |
||||
|
||||
# 进入app目录 |
||||
Set-Location "app" |
||||
|
||||
# 测试生成脚本 |
||||
try { |
||||
Write-Host "运行路由映射生成脚本..." -ForegroundColor Cyan |
||||
node scripts/generate-route-mappings.js |
||||
if ($LASTEXITCODE -eq 0) { |
||||
Write-Host "✅ 路由映射生成脚本执行成功" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ 路由映射生成脚本执行失败" -ForegroundColor Red |
||||
} |
||||
} catch { |
||||
Write-Host "❌ 路由映射生成脚本执行异常: $($_.Exception.Message)" -ForegroundColor Red |
||||
} |
||||
|
||||
# 返回根目录 |
||||
Set-Location ".." |
||||
|
||||
Write-Host "" |
||||
Write-Host "📊 修复总结:" -ForegroundColor Yellow |
||||
Write-Host "1. ✅ 添加了defaultApiMappings配置到RouteConfig" -ForegroundColor Green |
||||
Write-Host "2. ✅ 修复了RouteMapper中的API映射生成逻辑" -ForegroundColor Green |
||||
Write-Host "3. ✅ 添加了_createApiMappingFromDirectCall方法" -ForegroundColor Green |
||||
Write-Host "4. ✅ 添加了详细的调试日志" -ForegroundColor Green |
||||
Write-Host "5. ✅ 优化了路由收集和映射生成流程" -ForegroundColor Green |
||||
|
||||
Write-Host "" |
||||
Write-Host "🎯 预期效果:" -ForegroundColor Yellow |
||||
Write-Host "- 能够正确读取direct-route-mappings.js文件" -ForegroundColor White |
||||
Write-Host "- 能够正确生成路由映射" -ForegroundColor White |
||||
Write-Host "- 不再出现'没有生成路由映射'错误" -ForegroundColor White |
||||
Write-Host "- 路由同步逻辑能够正常执行" -ForegroundColor White |
||||
|
||||
Write-Host "" |
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host "修复完成!现在可以重新启动应用测试" -ForegroundColor Green |
||||
Write-Host "========================================" -ForegroundColor Cyan |
@ -0,0 +1,88 @@
@@ -0,0 +1,88 @@
|
||||
# 测试路由同步优化效果 |
||||
# 检查死循环问题是否已解决 |
||||
|
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host " 路由同步优化测试脚本" -ForegroundColor Cyan |
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host "" |
||||
|
||||
# 设置编码 |
||||
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 |
||||
$OutputEncoding = [System.Text.Encoding]::UTF8 |
||||
|
||||
# 检查优化后的文件 |
||||
Write-Host "🔍 检查优化后的文件..." -ForegroundColor Yellow |
||||
|
||||
$filesToCheck = @( |
||||
"app\plugins\route-mapping-plugin.js", |
||||
"app\scripts\generate-route-mappings.js", |
||||
"app\vue.config.js", |
||||
"app\src\renderer\modules\route-sync\RouteSyncManager.js", |
||||
"app\src\renderer\main.js", |
||||
"dev-full.ps1" |
||||
) |
||||
|
||||
foreach ($file in $filesToCheck) { |
||||
if (Test-Path $file) { |
||||
Write-Host "✅ $file 存在" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ $file 不存在" -ForegroundColor Red |
||||
} |
||||
} |
||||
|
||||
Write-Host "" |
||||
Write-Host "🔧 测试路由映射生成脚本..." -ForegroundColor Yellow |
||||
|
||||
# 进入app目录 |
||||
Set-Location "app" |
||||
|
||||
# 测试检查模式 |
||||
Write-Host "测试 --check-only 模式..." -ForegroundColor Cyan |
||||
try { |
||||
node scripts/generate-route-mappings.js --check-only |
||||
if ($LASTEXITCODE -eq 0) { |
||||
Write-Host "✅ 检查模式测试通过" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ 检查模式测试失败" -ForegroundColor Red |
||||
} |
||||
} catch { |
||||
Write-Host "❌ 检查模式测试异常: $($_.Exception.Message)" -ForegroundColor Red |
||||
} |
||||
|
||||
# 测试正常生成模式 |
||||
Write-Host "测试正常生成模式..." -ForegroundColor Cyan |
||||
try { |
||||
node scripts/generate-route-mappings.js |
||||
if ($LASTEXITCODE -eq 0) { |
||||
Write-Host "✅ 正常生成模式测试通过" -ForegroundColor Green |
||||
} else { |
||||
Write-Host "❌ 正常生成模式测试失败" -ForegroundColor Red |
||||
} |
||||
} catch { |
||||
Write-Host "❌ 正常生成模式测试异常: $($_.Exception.Message)" -ForegroundColor Red |
||||
} |
||||
|
||||
# 返回根目录 |
||||
Set-Location ".." |
||||
|
||||
Write-Host "" |
||||
Write-Host "📊 优化总结:" -ForegroundColor Yellow |
||||
Write-Host "1. ✅ 添加了防重复生成机制(5秒冷却时间)" -ForegroundColor Green |
||||
Write-Host "2. ✅ 添加了文件变化检测,只在必要时重新生成" -ForegroundColor Green |
||||
Write-Host "3. ✅ 添加了文件内容比较,避免无意义的文件写入" -ForegroundColor Green |
||||
Write-Host "4. ✅ 优化了启动脚本,避免重复生成" -ForegroundColor Green |
||||
Write-Host "5. ✅ 添加了webpack监听排除规则" -ForegroundColor Green |
||||
Write-Host "6. ✅ 实现了路由同步管理器单例模式" -ForegroundColor Green |
||||
Write-Host "7. ✅ 添加了防重复初始化机制" -ForegroundColor Green |
||||
|
||||
Write-Host "" |
||||
Write-Host "🎯 预期效果:" -ForegroundColor Yellow |
||||
Write-Host "- 启动时只生成一次路由映射文件" -ForegroundColor White |
||||
Write-Host "- 热加载时不会重复生成文件" -ForegroundColor White |
||||
Write-Host "- 避免了死循环问题" -ForegroundColor White |
||||
Write-Host "- 提高了开发体验" -ForegroundColor White |
||||
|
||||
Write-Host "" |
||||
Write-Host "========================================" -ForegroundColor Cyan |
||||
Write-Host "测试完成!现在可以尝试启动选项3(热加载监控模式)" -ForegroundColor Green |
||||
Write-Host "========================================" -ForegroundColor Cyan |
Loading…
Reference in new issue