3.4 KiB
3.4 KiB
comindex.uvue 重构总结
重构目标
根据最新的数据库结构(主表+翻译表模式),重构公司首页的数据获取逻辑,删除不必要的数据获取方式,确保代码简洁高效。
数据库结构
- 主表:
ak_global_config- 存储配置的基本信息 - 翻译表:
ak_global_config_translations- 存储多语言翻译 - 查询函数:
get_configs_by_language(p_language_code)- 一键获取指定语言的所有配置
重构内容
1. 简化数据加载逻辑
之前: 多层备用查询方案(RPC函数 → 视图查询 → 联查)
// 复杂的三层备用查询
try {
// 尝试RPC函数
} catch {
try {
// 尝试视图查询
} catch {
// 最后联查
}
}
现在: 直接使用最优查询函数
// 直接使用最新的查询函数
const result = await supa.rpc('get_configs_by_language', {
p_language_code: langCode
})
2. 优化数据处理函数
updateCompanyInfoDirectly() 函数
- 优化前: 大量的错误检查和日志输出
- 优化后: 简洁的配置读取,减少冗余代码
updateSocialMediaLinksNew() 函数
- 优化前: 逐个检查和更新社交媒体链接
- 优化后: 使用配置映射数组,统一处理逻辑
updateHotSearchKeywordsNew() 函数
- 优化前: 复杂的switch语句处理默认值
- 优化后: 使用对象映射,代码更简洁
useDefaultCompanyConfig() 函数
- 优化前: 冗长的switch-case结构
- 优化后: 使用配置对象,代码更清晰
3. 删除冗余调试函数
删除的函数
debugNewConfigSystem()- 过于复杂的调试函数testAllLanguages()- 多语言测试函数(功能重复)- 重复的
reloadConfig()函数定义
保留的简化调试
debugConfigSystem()- 简化的状态检查reloadConfig()- 基础的配置重载
4. 更新调试面板
- 删除不存在的函数调用
- 简化调试选项
- 增加加载状态显示
性能优化
1. 减少数据库查询
- 从3种备用查询方式减少到1种主要方式
- 删除不必要的测试查询
2. 简化数据处理
- 使用更高效的数据映射
- 减少循环和条件判断
3. 优化代码结构
- 删除冗余代码行数: ~200行
- 提高代码可读性和维护性
语言代码映射
确保兼容现有的语言切换逻辑:
zh-CN,zh→zhen-US,en→enzh-TW→twja-JP,ja→ja
配置项分类
可翻译配置
company_name- 公司名称company_slogan- 公司标语company_address- 公司地址hot_search_1-5- 热门搜索关键词
不可翻译配置
company_phone- 电话company_email- 邮箱company_icp- 备案号company_logo_url- LOGO地址social_*_url- 社交媒体链接
兜底机制
保留默认配置作为数据库连接失败时的兜底方案,确保应用在任何情况下都能正常显示。
测试建议
- 验证多语言切换功能
- 测试配置加载性能
- 确认社交媒体链接更新
- 检查热门搜索关键词显示
- 验证调试面板功能
总结
重构后的代码更加简洁、高效,完全适配新的数据库结构,删除了所有不必要的逻辑,提高了维护性和性能。前端现在完全依赖新的主表+翻译表结构,为后续的功能扩展奠定了良好基础。