datai-vue/CHANGELOG.md

75 lines
3.6 KiB
Markdown
Raw Permalink Normal View History

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [v1.2.0] - 2026-01-26
### Added
- 实现前端国际化动态资源功能,包括:
- 动态语言列表获取(从后端 API 获取系统支持的语言列表)
- 用户语言偏好同步(登录后自动同步并应用用户的语言偏好)
- 远程翻译资源加载(从后端 API 加载远程翻译资源)
- 动态菜单国际化(在路由生成时处理菜单标题翻译)
- 新增 API 层接口封装(`src/api/system/language.js`
- 新增语言代码格式转换工具(`src/utils/langFormat.js`
- 新增远程翻译资源加载器(`src/locales/loader.js`
- 新增单元测试和集成测试(`src/utils/__tests__/langFormat.test.js`、`src/locales/__tests__/loader.test.js`
### Changed
- `src/components/LangSelect/index.vue` - 添加动态语言列表加载和用户偏好更新
- `src/store/modules/app.ts` - 添加远程资源加载逻辑
- `src/store/modules/user.ts` - 添加用户语言偏好同步逻辑
- `src/store/modules/permission.ts` - 添加动态菜单国际化逻辑
## [v1.1.0] - 2026-01-26
### Added
- 实现布局Layout国际化包括
- 侧边栏菜单标题翻译
- 顶部导航国际化(语言选择、退出登录、全屏、布局大小、主题、设置等)
- 标签页国际化(动态更新标签页标题)
- 实现认证模块Auth国际化包括
- 登录页国际化(表单验证规则、错误提示、按钮文本等)
- 注册页国际化(表单验证规则、成功提示、变量插值等)
- 实现全局公共文本国际化,包括:
- HTTP 错误处理国际化401、403、404 等错误码)
- 错误码字典国际化(将错误码 Value 改为 Translation Key
- 新增单元测试,包括:
- 中文翻译测试zh-CN.test.ts
- 英文翻译测试en-US.test.ts
### Changed
- `src/locales/zh-CN.ts` - 扩展中文翻译资源,添加 common、layout、login、register、error 等模块
- `src/locales/en-US.ts` - 扩展英文翻译资源,添加 common、layout、login、register、error 等模块
- `src/layout/components/Sidebar/SidebarItem.vue` - 添加侧边栏菜单标题翻译功能
- `src/layout/components/Navbar/index.vue` - 添加顶部导航国际化支持
- `src/layout/components/TagsView/index.vue` - 添加标签页动态更新功能
- `src/views/auth/login.vue` - 添加登录页国际化支持
- `src/views/auth/register.vue` - 添加注册页国际化支持
- `src/utils/request.ts` - 添加 HTTP 错误处理国际化支持
- `src/utils/errorCode.ts` - 将错误码 Value 改为 Translation Key
## [v1.0.0] - 2026-01-26
### Added
- 实现前端国际化基础架构,包括:
- 引入 vue-i18n@9 核心库,支持 Vue 3 Composition API
- 建立标准化的资源目录结构src/locales/
- 创建中文和英文翻译文件zh-CN.ts、en-US.ts
- 封装通用的语言切换组件LangSelect
- 配置网络拦截器自动注入 Accept-Language 请求头
- 集成 Element Plus 的国际化支持ElConfigProvider
### Changed
- `src/store/modules/app.ts` - 新增 language 状态字段和 setLanguage action
- `src/layout/components/Navbar/index.vue` - 集成 LangSelect 组件到导航栏
- `src/utils/request.ts` - 在请求拦截器中注入 Accept-Language 请求头
- `src/App.vue` - 集成 ElConfigProvider 组件,支持 Element Plus 国际化
- `src/main.ts` - 注册 i18n 插件
### Dependencies
- 新增 vue-i18n@9