GT ClassMethodsLocales

resolveCanonicalLocale

GT resolveCanonicalLocale 方法的 API 参考

概述

在对 locale 进行别名映射(如 cn -> zh)的场景下,若已配置自定义映射,resolveCanonicalLocale 方法会将别名的 locale 代码转换为其规范的 BCP-47 locale 代码。


参考资料

参数

Prop

Type

参数说明

参数说明
locale要解析为标准(规范)形式的别名语言代码。若未提供,则使用该实例的 targetLocale
customMapping可选的自定义映射,用于覆盖该实例的默认映射

返回

string - 若存在映射,则返回规范的 BCP-47 语言代码;否则返回原始语言代码

抛出

  • Error - 如果未提供 locale,且该实例未配置 targetLocale

示例

const gt = new GT({
  sourceLocale: 'en',
  customMapping: {
    'cn': { code: 'zh', name: '普通话' },
  }
});

// 将别名转换为标准语言代码
const canonical = gt.resolveCanonicalLocale('cn');
console.log(canonical); // "zh"

// 标准 BCP-47 代码保持不变
const unchanged = gt.resolveCanonicalLocale('fr-FR');
console.log(unchanged); // "fr-FR"

注意

  • 将别名 locale 代码转换为规范的 BCP-47 locale 代码
  • 若不存在自定义映射,则返回原始 locale
  • 可与 GT 构造函数中的 customMapping 配置配合使用
  • 不对输入或输出的 locale 代码进行任何校验

后续步骤

这份指南怎么样?

resolveCanonicalLocale