determineLocale
Referencia de API del método determineLocale de GT
Descripción general
El método determineLocale determina el locale más adecuado a partir de una lista de locales aprobados según las preferencias del usuario.
Implementa la negociación de locale para encontrar el locale más apropiado cuando no hay coincidencias exactas disponibles.
const gt = new GT({
sourceLocale: 'en-US',
locales: ['en-US', 'es-ES', 'fr-FR', 'de-DE']
});
// Coincidencia exacta
console.log(gt.determineLocale('en-US')); // 'en-US'
// Retroceso de idioma
console.log(gt.determineLocale('en-GB')); // 'en-US' (variante de inglés más cercana)
// Varias preferencias
console.log(gt.determineLocale(['fr-CA', 'es-MX', 'en-US'])); // 'es-ES' (español más cercano)
// Sin coincidencia
console.log(gt.determineLocale('it-IT')); // undefinedReferencias
Parámetros
Prop
Type
Devuelve
string | undefined - El locale que mejor coincida o undefined si no se encuentra ninguna coincidencia
Ejemplos
Negociación del locale del usuario
const gt = new GT({
sourceLocale: 'en-US',
locales: ['en-US', 'en-GB', 'es-ES', 'fr-FR']
});
// Simula el encabezado Accept-Language del navegador
const userPreferences = ['fr-CA', 'en-GB', 'en'];
const bestMatch = gt.determineLocale(userPreferences);
console.log(bestMatch); // 'fr-FR' según el orden de preferenciasNotas
- Devuelve la primera coincidencia exacta de las locales aprobadas
- Recurre a coincidencias por idioma cuando la región exacta no está disponible
- Respeta el orden de preferencia en el array de entrada
- Devuelve undefined cuando no se encuentra una coincidencia adecuada
- Es esencial para implementar la negociación de locale en aplicaciones web
Próximos pasos
- Revisa las necesidades de traducción con
requires-translation - Compara idiomas con
is-same-language
¿Qué te parece esta guía?