Utility FunctionsLocales

getLocaleName

Referencia de API de la función autónoma getLocaleName

Descripción general

La función independiente getLocaleName obtiene el nombre visible de un código de configuración regional sin requerir una instancia de la clase GT. Usa la API Intl.DisplayNames para devolver nombres de configuraciones regionales localizados para cualquier código BCP-47 válido.

import { getLocaleName } from 'generaltranslation';

const name = getLocaleName('fr-CA', 'en');
console.log(name); // "Francés (Canadá)"

Referencias

Parámetros

Prop

Type

Descripción de los parámetros

ParámetroDescripción
localecódigo de configuración regional BCP-47 cuyo nombre para mostrar se desea obtener
defaultLocalelocale que se usa para localizar el nombre para mostrar (valor predeterminado: 'en')
customMappingasignación personalizada opcional para códigos de configuración regional y nombres

Devuelve

string - El nombre localizado para mostrar del locale.


Comportamiento

Resolución del idioma de visualización

La función localiza los nombres siguiendo esta prioridad:

  1. Parámetro defaultLocale (si se proporciona)
  2. Locale predeterminado de la biblioteca ('en')

Integración de asignaciones personalizadas

  • Primero se comprueban las asignaciones personalizadas tanto para códigos de configuración regional como para nombres
  • Admite la resolución de alias y nombres para mostrar personalizados
  • Si no hay asignación, recurre a Intl.DisplayNames estándar

Estrategia de resolución de nombres

  1. name de asignación personalizada (máxima prioridad)
  2. Intl.DisplayNames en la configuración regional predeterminada
  3. Intl.DisplayNames con el valor predeterminado de la biblioteca ('en')
  4. El propio código de configuración regional (contenido de respaldo predeterminado)

Ejemplos

import { getLocaleName } from 'generaltranslation';

// Nombres de visualización en inglés
console.log(getLocaleName('es', 'en')); // "Spanish (Spain)"
console.log(getLocaleName('ja', 'en')); // "Japanese (Japan)"
console.log(getLocaleName('zh', 'en')); // "Chinese (China)"

Crear opciones de locale

import { getLocaleName, getLocaleEmoji } from 'generaltranslation';

function buildLocaleOptions(
  supportedLocales: string[],
  displayLocale: string = 'en'
) {
  return supportedLocales.map(locale => ({
    value: locale,
    label: getLocaleName(locale, displayLocale),
    emoji: getLocaleEmoji(locale)
  }));
}

const options = buildLocaleOptions([
  'en',
  'es',
  'fr',
  'de',
  'ja'
], 'en');

console.log(options);
// [
//   { value: 'en', label: 'inglés (Estados Unidos)', emoji: '🇺🇸' },
//   { value: 'es', label: 'español (España)', emoji: '🇪🇸' },
//   ...
// ]

Notas

  • Las asignaciones personalizadas tienen prioridad sobre Intl.DisplayNames estándar
  • Devuelve el propio código de configuración regional si no se puede determinar un nombre para mostrar
  • El parámetro de configuración regional de visualización determina el idioma del nombre devuelto

Próximos pasos

¿Qué te ha parecido esta guía?

getLocaleName