i18n
未设置标题
早期方案:前端懒加载JSON
项目初期,采用前端直接懒加载国际化JSON
文件的方式实现语言切换。随着模块增多,词条数量不断增加,前端维护JSON
文件的心智负担越来越大:词条增多导致文件体积膨胀,管理和维护变得十分繁琐。
中期优化:迁移至后端管理
为解决前端维护难题,项目中期将语言管理和国际化词条管理迁移至后台功能,通过接口动态加载所需资源,形成当前的最终形态:
- 核心接口:
- 获取语言列表接口(如
/system/lang/list/public
):用于获取项目支持的所有语言选项 - 获取对应语言词条接口(如
/system/locale/message/${lang}
):根据选定语言加载所有国际化词条
- 获取语言列表接口(如
现状与数据
- 当前词条规模:单个语言约700+词条,中英双语合计1500+条数据
- 性能优化:后台已实现缓存处理,加载词条时从缓存获取,降低接口压力