Config

loadDictionary()

loadDictionary() 函数的 API 参考。

概述

loadDictionary() 将为给定的语言环境加载一个翻译 json 文件。

此函数适用于希望将 gt-next 作为独立 i18n 库使用的人。

此函数主要用于将现有的 i18n 项目迁移到 General Translation,同时保留其现有翻译。 按照本指南进行设置。

如果存在多个翻译,则由 loadDictionary() 加载的字典中的翻译将始终优先于其他翻译。 loadDictionary() 仅支持使用带有字符串翻译的 JSON 文件。

参考

参数

PropTypeDefault
locale?
string
-

描述

类型描述
locale应加载翻译的语言环境。

返回值

一个 Promise<any>,解析为将 ID 映射到给定语言环境的翻译的字典。


设置

通常,您将从 ./public/locales 目录加载字典。

将您的 loadDictionary() 定义为名为 loadDictionary.jsloadDictionary.ts 的文件的默认导出,可以在 src/ 目录或根目录中。 确保该函数返回一个 promise,该 promise 解析为一个包含给定语言环境翻译的对象。

src/loadDictionary.js
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() 加载的字典将优先于通过 loadTranslations() 加载的翻译。

下一步

在本页面