mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-24 14:42:11 -03:00
76 lines
2.5 KiB
Markdown
76 lines
2.5 KiB
Markdown
# 国际化系统改进总结
|
||
|
||
## 概述
|
||
成功将i18n系统从自动浏览器语言检测改为用户主动设置的方式,避免了页面打开时的语言闪烁问题。
|
||
|
||
## 主要改动
|
||
|
||
### 1. 新增语言支持
|
||
- 新增了7种语言的完整翻译文件:
|
||
- 中文(繁体)- `zh-TW.js`
|
||
- 俄语 - `ru.js`
|
||
- 德语 - `de.js`
|
||
- 日语 - `ja.js`
|
||
- 韩语 - `ko.js`
|
||
- 法语 - `fr.js`
|
||
- 西班牙语 - `es.js`
|
||
|
||
### 2. 核心系统修改
|
||
- **i18n/index.js**:
|
||
- 修改了初始化逻辑,从设置中读取语言而非浏览器检测
|
||
- 新增 `initializeFromSettings()` 方法
|
||
- 完善了 `setLanguage()`, `getLanguageFromSettings()`, `getAvailableLanguages()` 方法
|
||
|
||
- **utils/i18nHelpers.js**:
|
||
- 新增 `switchLanguage()` 函数,支持运行时语言切换
|
||
- 提供DOM重新翻译和事件分发功能
|
||
|
||
### 3. 设置界面集成
|
||
- **templates/components/modals/settings_modal.html**:
|
||
- 在Layout Settings部分添加了语言选择下拉菜单
|
||
- 使用原生语言名称显示9种支持的语言
|
||
|
||
- **managers/SettingsManager.js**:
|
||
- 新增 `saveLanguageSetting()` 方法处理语言设置保存
|
||
- 在 `loadSettingsToUI()` 中添加语言设置的加载逻辑
|
||
- 集成i18n切换功能
|
||
|
||
### 4. 早期初始化优化
|
||
- **i18n/early-init.js**:
|
||
- 创建了早期语言检测脚本,防止FOUC(内容闪烁)
|
||
- 在页面其他内容加载前设置正确的语言
|
||
|
||
- **templates/base.html**:
|
||
- 在head部分最开始加载early-init.js脚本
|
||
|
||
### 5. 核心应用集成
|
||
- **core.js**:
|
||
- 修改了初始化流程,使用 `initializeFromSettings()` 而非自动检测
|
||
|
||
## 语言支持列表
|
||
1. **English** (en) - 英语
|
||
2. **中文(简体)** (zh-CN) - Simplified Chinese
|
||
3. **中文(繁體)** (zh-TW) - Traditional Chinese
|
||
4. **Русский** (ru) - Russian
|
||
5. **Deutsch** (de) - German
|
||
6. **日本語** (ja) - Japanese
|
||
7. **한국어** (ko) - Korean
|
||
8. **Français** (fr) - French
|
||
9. **Español** (es) - Spanish
|
||
|
||
## 用户体验改进
|
||
- ✅ 消除了页面加载时的语言闪烁问题
|
||
- ✅ 用户可以手动选择喜好的语言
|
||
- ✅ 语言设置会保存在localStorage中
|
||
- ✅ 支持运行时即时语言切换
|
||
- ✅ 语言选择界面使用原生语言名称显示
|
||
|
||
## 技术特点
|
||
- 保持了模块化架构
|
||
- 向后兼容现有代码
|
||
- 优化了初始化性能
|
||
- 提供了完整的错误处理
|
||
- 集成了现有的设置管理系统
|
||
|
||
所有修改已完成,系统现在支持用户主动选择语言,有效避免了语言闪烁问题。
|