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 GT. Utiliza la API Intl.DisplayNames para ofrecer nombres de configuración regional 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 parámetros

ParámetroDescripción
localeCódigo de configuración regional BCP-47 para obtener el nombre para mostrar
defaultLocaleLocale que se usará para localizar el nombre para mostrar (predeterminado: 'en')
customMappingAsignación personalizada opcional para códigos y nombres de locale

Devuelve

string - El nombre mostrado localizado del locale.


Comportamiento

Resolución del idioma de visualización

La función localiza los name siguiendo esta prioridad:

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

Integración de asignación personalizada

  • Las asignaciones personalizadas se comprueban primero tanto para códigos de configuración regional como para name
  • Admite la resolución de alias y nombres de visualización personalizados
  • Si no hay asignación, recurre al Intl.DisplayNames estándar para los códigos no mapeados

Estrategia de resolución de name

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

Ejemplos

import { getLocaleName } from 'generaltranslation';

// Nombres mostrados 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 options 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 parece esta guía?