Développer avec formatjs
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
En plus de faciliter le pipeline de production i18n, formatjs vise aussi à améliorer l'expérience développeur i18n grâce à notre plugin ESLint pour formatjs.
Installation du linter
- npm
- yarn
npm i -D eslint-plugin-formatjs eslint
yarn add -D eslint-plugin-formatjs eslint
Puis dans votre configuration ESLint :
{
"plugins": ["formatjs"],
"rules": {
"formatjs/no-offset": "error"
}
}
Consultez eslint-plugin-formatjs pour plus de détails sur nos règles.
Codes d'erreur
react-intl est conçu pour échouer rapidement en cas de problème de configuration mais basculer sur defaultLocale pour les erreurs de traduction. Voici la liste des erreurs émissibles détectables lors des tests :
FORMAT_ERROR
Problème lors du formatage d'une phrase lorsque des valeurs de paramètres sont malformées, par exemple une string passée pour une Date.
UNSUPPORTED_FORMATTER
Cette erreur survient lorsqu'un format personnalisé est déclaré sans formateur associé. Par exemple :
intl.formatMessage({
defaultMessage: 'the price is {p, number, customCurrency}',
})
et qu'aucun formateur n'existe pour customCurrency.
INVALID_CONFIG
Lorsque des valeurs de configuration sont incorrectes, comme l'absence de locale.
MISSING_DATA
Quand les APIs Intl natives ne supportent pas certaines locales, ou que les locale-data manquent malgré les polyfills. Typiquement sur des navigateurs/Node obsolètes ou avec des APIs non supportées.
MISSING_TRANSLATION
Déclenchée quand un message traduit dans messages est introuvable pour un id donné et qu'aucun defaultMessage de secours n'existe pour cet id.
Cette erreur survient fréquemment puisqu'elle se produit pour chaque message non traduit. Si vous la journalisez à distance, implémentez un mécanisme de limitation.