Utility FunctionsLocales

getLocaleDirection

Referencia de API de la función getLocaleDirection

Descripción general

La función getLocaleDirection determina la dirección del texto (de izquierda a derecha o de derecha a izquierda) para un locale sin requerir una instancia de la GT class. Utiliza la API Intl.Locale para ofrecer una detección precisa de la dirección en cualquier código BCP-47 de configuración regional válido.

Esta función se usa con mayor frecuencia para establecer el atributo dir de un elemento HTML según el locale.

import { getLocaleDirection } from 'generaltranslation';

const direction = getLocaleDirection('ar-SA');
console.log(direction); // "rtl"

const englishDirection = getLocaleDirection('en-US');
console.log(direccionIngles); // "ltr"

Referencias

Parámetros

Prop

Type

Descripción de parámetros

ParámetroDescripción
localecódigo de configuración regional BCP‑47 para verificar la dirección del texto

Devuelve

'ltr' | 'rtl' - Dirección del texto del locale:

  • 'ltr': De izquierda a derecha (la mayoría de los idiomas, incluidos inglés, español, francés, alemán, chino, japonés, etc.)
  • 'rtl': De derecha a izquierda (árabe, hebreo, persa, urdu y otras lenguas semíticas/del Medio Oriente)

Comportamiento

Algoritmo de detección de dirección

La función utiliza la propiedad textInfo.direction de la API Intl.Locale:

  1. Crea un objeto Intl.Locale para el locale proporcionado
  2. Accede a la propiedad textInfo.direction para obtener la dirección específica del idioma
  3. Devuelve 'rtl' para idiomas de derecha a izquierda y 'ltr' para los demás
  4. Usa 'ltr' de forma predeterminada si el locale no es válido o genera un error

Reconocimiento de idiomas RTL

Detecta automáticamente idiomas RTL, incluidos:

  • Árabe (ar, ar-SA, ar-EG, ar-AE, etc.)
  • Hebreo (he, he-IL)
  • Persa/Farsi (fa, fa-IR)
  • Urdu (ur, ur-PK, ur-IN)
  • Pastún (ps)
  • Sindhi (sd)
  • Kurdo soraní (ckb)
  • Y otros sistemas de escritura RTL

Manejo de errores

  • Los códigos de configuración regional no válidos o mal formados tienen 'ltr' como valor predeterminado
  • No se generan excepciones ante entradas no válidas
  • Comportamiento de contenido de respaldo predeterminado sólido para casos límite

Ejemplos

Detección básica de la dirección

import { getLocaleDirection } from 'generaltranslation';

// Idiomas de izquierda a derecha
console.log(getLocaleDirection('en-US')); // "ltr"
console.log(getLocaleDirection('es-ES')); // "ltr"
console.log(getLocaleDirection('fr-FR')); // "ltr"
console.log(getLocaleDirection('ja-JP')); // "ltr"
console.log(getLocaleDirection('zh-CN')); // "ltr"

// Idiomas de derecha a izquierda
console.log(getLocaleDirection('ar-SA')); // "rtl"
console.log(getLocaleDirection('he-IL')); // "rtl"
console.log(getLocaleDirection('fa-IR')); // "rtl"
console.log(getLocaleDirection('ur-PK')); // "rtl"

Notas

  • Devuelve ltr para todos los idiomas escritos de izquierda a derecha (la mayoría de los idiomas del mundo)
  • Devuelve rtl para los idiomas escritos de derecha a izquierda (árabe, hebreo, persa, etc.)
  • Usa la API moderna Intl.Locale para una detección precisa
  • Funciona con todos los códigos de configuración regional BCP-47

Próximos pasos

¿Qué te parece esta guía?