75 lines
3.6 KiB
Markdown
75 lines
3.6 KiB
Markdown
# 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
|