Types

DataFormat

Enumeración de los tipos de formato de contenido compatibles para la traducción

Descripción general

DataFormat especifica el formato del contenido traducible.

type DataFormat = 'JSX' | 'ICU' | 'I18NEXT';

Definición de tipos

Valores

ValorDescripciónTipo de contenidoCaso de uso
'JSX'Formato de componente JSX/ReactJsxChildrenComponentes de UI avanzados con elementos y variables
'ICU'Formato de mensajes ICU (MessageFormat)IcuMessage (string)Formateo complejo con plurales, fechas y números
'I18NEXT'Formato de mensajes de i18nextI18nextMessage (string)Interpolación simple; proyectos existentes con i18next

Características del formato

FormatoVariablesPluralizaciónElementos HTMLFormateo de fecha/número
JSX✅ Variables enriquecidas✅ Mediante bifurcación✅ Compatibilidad completa con HTML✅ Mediante variables
ICU✅ Sintaxis {variable}✅ Plurales integrados❌ Solo texto✅ Formateadores integrados
I18NEXT✅ Sintaxis {{variable}}✅ Mediante count❌ Solo texto✅ Mediante formateadores

Ejemplos

Especificación de formato

const jsxEntry: Entry = {
  source: { t: 'div', c: ['Hola ', { k: 'name' }] },
  targetLocale: 'es',
  metadata: { dataFormat: 'JSX' }
};

const icuEntry: Entry = {
  source: 'Hola {name}',
  targetLocale: 'es',
  metadata: { dataFormat: 'ICU' }
};

Notas

  • DataFormat determina cómo se procesa el contenido en el sistema de traducción
  • Especificar el formato en los metadatos garantiza un procesamiento correcto del contenido
  • La detección automática es posible, pero se recomienda especificarlo explícitamente

Tipos relacionados

  • Content - Unión de todos los tipos de formato de contenido
  • JsxChildren - Contenido en formato JSX

¿Qué te parece esta guía?