Saltar al contenido principal

Desarrollo con formatjs

Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Además de su fuerte enfoque en facilitar la pipeline de producción de i18n, formatjs también busca mejorar la experiencia de desarrollo (DevEx) con nuestro eslint-plugin-formatjs.

Instalación del Linter

npm i -D eslint-plugin-formatjs eslint

Luego, en tu configuración de eslint:

{
"plugins": ["formatjs"],
"rules": {
"formatjs/no-offset": "error"
}
}

Visita eslint-plugin-formatjs para más detalles sobre nuestras reglas.

Códigos de Error

react-intl está diseñado para fallar rápidamente ante problemas de configuración pero recurrir a defaultLocale en errores de traducción. A continuación la lista de errores que emitimos y que pueden detectarse durante pruebas:

FORMAT_ERROR

Ocurre al intentar formatear una oración con valores de marcadores malformados, ej. pasar un string donde se espera un Date.

UNSUPPORTED_FORMATTER

Se activa cuando se declara un formato personalizado sin su formateador correspondiente. Por ejemplo:

intl.formatMessage({
defaultMessage: 'the price is {p, number, customCurrency}',
})

y no existe un formateador para customCurrency.

INVALID_CONFIG

Cuando valores de configuración son incorrectos, como omitir locale.

MISSING_DATA

Cuando APIs nativas de Intl no soportan ciertas configuraciones regionales, o falta locale-data con polyfills configurados. Suele ocurrir en navegadores/Node antiguos o al usar APIs nuevas en navegadores sin soporte.

MISSING_TRANSLATION

Se activa al buscar un mensaje traducido en messages para un id específico que no existe y no hay defaultMessage de respaldo para el id dado.

verbosidad

Este error ocurrirá frecuentemente ya que se dispara por cada mensaje sin traducción. Si lo registras remotamente, implementa throttling.