docs(migration): 添加清渊传奇PHP到Vue+Node.js移植计划文档

- 新增 MIGRATION.md 详细记录PHP到Node.js架构迁移方案
- 包含项目背景、现有资产盘点、架构设计、任务清单等完整规划
- 记录后端补全、前端补全、PHP停用、部署运维四个阶段实施计划
- 提供技术决策、数据库说明、进度总览等关键信息
- 更新 .gitignore 添加 *_out.txt build_output.txt 构建输出文件过滤
- 修复 utils.js 路径引用问题确保代码正常运行
This commit is contained in:
艾贤凌
2026-04-24 17:57:06 +08:00
parent d8106b2dd2
commit d676faa704
18 changed files with 23 additions and 105 deletions

View File

@@ -5,7 +5,6 @@ const loadBar2MaxWidth = 200;
let loadError = false;
onMounted(()=>{
const loadBox = document.getElementById('loadBox'),
logoImg = document.getElementById('logoImg'),
loadBar1 = document.getElementById('loadBar1'),
loadBar2 = document.getElementById('loadBar2');
@@ -18,7 +17,6 @@ onMounted(()=>{
smallScreen = screenWidth <= 0,
isHorizontal = isMobile() && screenHeight <= 590;
if (loadBox) loadBox.style.paddingTop = (!isHorizontal ? (screenHeight / 4) : 50) + 'px';
if (logoImg) logoImg.width = isHorizontal || smallScreen ? 300 : 500;
if (loadBar1) {
loadBar1Width += 20;
if (loadBar1Width > 100) loadBar1Width = 0;
@@ -73,7 +71,6 @@ onMounted(()=>{
<template>
<div id="logDiv" style="position:absolute; top: 31%; left: 50%;transform: translate(-50%,-50%)">
<div style="display: flex;flex-direction: column; align-items: center;gap: 4px;justify-content: center">
<img id="logoImg" align="center" width="380" src="/login/logo.png" class="mb-20"/>
<div id="label" style="color: #b4792e; font-size: 20px;">
首次加载时间较长请耐心等待如长时间无响应 <span class="font_small">
<a onClick="window.location.reload()" class="link_color">请点此刷新</a> /

View File

@@ -32,13 +32,14 @@ onMounted(async () => {
// 解析 JWT 获取账号信息
const payload = parseJwt(token)
if (!payload?.username) {
error.value = '登录信息无效,请重新登录'
sessionStorage.removeItem('CQ-TOKEN')
router.replace('/login')
setTimeout(() => router.replace('/login'), 2000)
return
}
const account = payload.username
const password = payload.password // md5 密码哈希,用于游戏客户端鉴权
const password = payload.password || '' // md5 密码哈希,用于游戏客户端鉴权
const serverId = payload.server_id || 1
// 调用 enter_game 接口,更新登录信息

View File

@@ -66,7 +66,16 @@ async function handleLogin() {
if (res.code === 0) {
sessionStorage.setItem('CQ-TOKEN', res.token)
ElMessage.success(res.message || '登录成功')
setTimeout(() => router.push('/index'), 1500)
// 确保token被正确存储后再跳转
setTimeout(() => {
// 验证token是否已正确存储
const storedToken = sessionStorage.getItem('CQ-TOKEN')
if (storedToken) {
router.push('/index')
} else {
ElMessage.error('登录状态保存失败,请重试')
}
}, 1500)
} else {
ElMessage.error(res.message || '登录失败')
}