字典

如何使用字典

概述

字典是在通用翻译中翻译字符串内容的一种方式。 所有内容都存储在一个中央文件中,可以使用useDict() 钩子访问。

如果你使用过其他i18n库,你可能熟悉使用翻译文件(en.jsonzh.json等)。 使用字典在语法上基本相同,只是你只需要维护一个基本语言的文件。 所有翻译将由LLMs生成。

提示: 如果你正在寻找一种更简单的方式来翻译字符串内容,我们建议使用useGT() 钩子


优势与劣势

使用字典有几个优势:

  1. 集中存储:字典将所有可翻译内容存储在单个文件中,使其更易于管理和更新。
  2. 历史先例:字典模式是行业中常见的设计模式,被许多其他库所使用。

同时,它也有一些劣势:

  1. 复杂性:与内联翻译字符串内容相比,字典设置和使用更为复杂。
  2. 可读性:由于内容与使用它的上下文分离,字典的可读性不如内联翻译。
  3. 可维护性:字典比内联翻译更难维护,因为当内容变更时,你需要手动更新字典文件。

字典是内联翻译的一种替代设计模式,但这些模式都受到我们库的支持,并且它们不是互斥的。 你可以将字典与<T>组件useGT()钩子的内联翻译一起使用。


示例

在字典文件(.js.json)中指定你的字符串内容。

src/dictionary.json
{
  "greetings": {
    "hello": 'Hello, World!',
  },
} 

然后通过将键传递给d()函数在你的组件中引用它。

src/MyComponent
import { GTProvider, useDict } from 'gt-react';
import dictionary from './dictionary.json';
 
export default function MyComponent() {
 
  const d = useDict(); 
 
  return (
    <GTProvider dictionary={dictionary}>
      <div>
        {d('greetings.hello')} // [!code highlight]
      </div>
    </GTProvider>
  );
}

注意事项

  • 字典是在通用翻译中翻译内容的一种方式。
  • useDict() 钩子用于使用字典模式翻译字符串。

下一步

  • 有关更多信息,请查看ReactNext.js的字典指南

在本页面