i18n-pro:让国际化变得轻松且愉快
之前在 上一个帖子 对该方案有详细介绍,这里简要分享最新进展
方案简介
本方案的一个特性是 keyless,即推崇 文案即 key。但在遇到 一词多义 或不同语言显示内容无关联的场景时,原方案存在局限。
为此,3.0 版本进行了增强
示例效果
2.0 示例
// 文案即 key
const text = t('hello world')
自动翻译生成的中文语言包:
{
"hello world": "你好世界"
}
3.0 示例
// 文案即 key
const text = t('hello world')
// 自定义 key
const customKeyText = t.t('custom-key', 'hello world')
自动翻译生成的中文语言包:
{
"hello world": "你好世界",
"custom-key": "你好世界"
}
说明
3.0 新增了 自定义 key 支持:
- 文案即 key:适用于普通文案,直接写
t('普通的文案')即可。 - 自定义 key:适用于“一词多义”或不同语言显示内容无关联的场景,写法为
t.t('a-custom-key', '具体文案')。 特别说明:采用此形式后,文案发生变化,重新翻译不会影响已生成的语言包。
此外,核心 JS 库已适配 React 、Vue3/Vue2 、Solid 、Svelte 等主流前端 UI 框架。新版本让我们的愿景“让国际化变得轻松且愉快”又更近了一步。 详细内容可访问 https://github.com/i18n-pro 了解,希望对各位开发者朋友们有帮助,欢迎交流和反馈!