loadDictionary
loadDictionary() 函数的 API 参考
概述
loadDictionary 会为指定的 locale 加载一个翻译 JSON 文件。
此函数适用于希望将 gt-next 作为独立 i18n 库使用的用户。
此函数主要用于在保留现有翻译的同时,将已有 i18n 项目迁移到 General Translation。 请按照本指南进行配置。
如果存在多份翻译,通过 loadDictionary 加载的 dictionaries 中的翻译将始终优先生效。
loadDictionary 仅支持使用包含字符串翻译的 JSON 文件。
参考资料
参数
Prop
Type
描述
| 类型 | 说明 | 
|---|---|
| locale | 需要加载其翻译的 locale。 | 
返回值
一个 Promise<any>,其解析结果为一个字典,将给定 locale 的 id 映射到对应的翻译。
设置
通常,你会从 ./public/locales 目录加载字典。
将 loadDictionary 定义为名为 loadDictionary.js 或 loadDictionary.ts 的文件的默认导出,文件可放在 src/ 目录或项目根目录。请确保该函数返回一个 Promise,该 Promise 解析为一个对象,其中包含指定 locale 的翻译。
export default async function loadDictionary(locale) {
  const translations = await import(`../public/locales/${locale}.json`);
  return translations.default;
}问题: loadTranslations 与 loadDictionary 有何不同?
- loadTranslations用于定义为你的应用获取翻译的自定义加载逻辑。 翻译可以来自 CDN(内容分发网络)、数据库,或随应用打包的资源。 这类翻译通常由 CLI 工具管理、机器生成,且不太便于人工编辑。
- loadDictionary面向将- gt-next作为独立库使用的场景。 用户自备翻译内容,不依赖任何翻译基础设施。
注意事项
- loadDictionary用于为你的应用加载自定义翻译。
- 通过 loadDictionary加载的 dictionaries 将优先于通过loadTranslations加载的翻译。
下一步
- 如果你想编写自己的翻译,请查看自定义翻译。
- 如需了解如何编写自定义翻译加载器的更多信息,请参阅loadTranslations。
这份指南怎么样?

