Fermer

février 7, 2024

Implémentation de l’internationalisation (I18n) dans React / Blogs / Perficient

Implémentation de l’internationalisation (I18n) dans React / Blogs / Perficient


L’internationalisation (I18n) est un aspect crucial de la création d’applications Web destinées à un public mondial. Cela implique d’adapter votre application aux différentes langues et régions de manière transparente. Dans ce blog, nous explorerons l’implémentation d’I18n dans une application React, garantissant une expérience utilisateur fluide pour divers publics.

Pourquoi l’internationalisation ?

Avant d’entrer dans les détails de l’implémentation, comprenons pourquoi I18n est essentiel. Votre application a le potentiel d’atteindre des utilisateurs de différentes régions du monde. I18n vous aide à briser les barrières linguistiques, rendant votre application React plus inclusive et attrayante pour un public diversifié.

Configuration de votre projet React

Tout d’abord, assurez-vous qu’une application React est opérationnelle. Sinon, vous pouvez en créer un à l’aide de l’application Create React ou de toute autre méthode préférée.

npx créer-react-app i18n-react-app

cd i18n-react-app

Choisir une bibliothèque I18n

Plusieurs bibliothèques peuvent vous aider avec I18n dans React. Un choix populaire est ‘réagir-i18next’.

Installez-le en utilisant :

npm installer i18next réagir-i18next

Configuration du I18n

Créez un fichier nommé i18n.js pour configurer I18n :

import i18n from "i18next";
import { initReactI18next } from "react-i18next";
import translationEN from "./translations/en.json"; // Import JSON file for English Language
import translationES from "./translations/es.json"; // Import JSON file for Spanish Language
const resources = {
  en: {
    translation: translationEN,
  },
  es: {
    translation: translationES,
  },
  // Add translations for other languages here
};

i18n.use(initReactI18next).init({
  resources,
  lng: "en", // Default language
  interpolation: {
    escapeValue: false,
  },
});
export default i18n;

Gérer les traductions avec un fichier JSON

Créez un dossier nommé ‘traductions’ à la racine de votre projet et ajoutez un fichier nommé ‘en.json’ (pour l’anglais) et ‘es.json’ (pour l’espagnol) avec vos traductions :

en.json

{
  "welcome": "Bienvenido a nuestra aplicación React!"
  // Add more key-value pairs as needed
}

es.json

{
  "welcome": "Welcome to our React App!",
  // Add more key-value pairs as needed
}

Utilisation de I18n dans les composants

Maintenant, mettons ces traductions en œuvre dans un composant React. Considérez un ‘Message de bienvenue’ composant:

import React from "react";
import { useTranslation } from "react-i18next";
const WelcomeMessage = () => {
  const { t } = useTranslation();
  return (
    <div>
      <h1>{t("welcome")}</h1>
    </div>
  );
};
export default WelcomeMessage;

Composant de changement de langue

Modifier le ‘Changeur de langue’ composant pour inclure des boutons pour basculer entre l’anglais et l’espagnol.

import React from "react";
import i18n from "./i18n";
const LanguageSwitcher = () => {
  const handleChangeLanguage = (lng) => {
    i18n.changeLanguage(lng);
  };
  return (
    <div>
      <button onClick={() => handleChangeLanguage("en")}>English</button>
      <button onClick={() => handleChangeLanguage("es")}>Español</button>
      {/* Add buttons for other languages as needed */}
    </div>
  );
};
export default LanguageSwitcher;

Rassembler tout cela

Enfin, intégrez ces composants dans votre application principale :

App.js

import React from "react";
import WelcomeMessage from "./WelcomeMessage";
import LanguageSwitcher from "./LanguageSwitcher";
const App = () => {
  return (
    <div>
      <LanguageSwitcher />
      <WelcomeMessage />
      {/* Add more components as needed */}
    </div>
  );
};
export default App;

Sortir:

Sortir

Conclusion

Dans ce blog, nous avons abordé l’importance de l’internationalisation dans une application React et démontré comment la mettre en œuvre à l’aide de la bibliothèque « react-i18next ». Avec des traductions appropriées et des capacités de changement de langue, votre application React est désormais équipée pour atteindre un public plus large et plus diversifié.

En suivant ces étapes, vous pouvez créer une application React conviviale et accessible au niveau international qui trouve un écho auprès des utilisateurs du monde entier. Bon codage !






Source link