I dette afsnit vil vi guide dig gennem processen med at implementere internationalisering(i18n) i din Next.js ansøgning. Med i18n kan du skabe en flersproget oplevelse for brugerne og levere sprogspecifikt indhold.
Brug af next-i18next
biblioteket
next-i18next
er et populært bibliotek til implementering af i18n i Next.js applikationer. Sådan kan du tilføje i18n til din applikation:
Installer next-i18next
:
npm install next-i18next
Konfigurer biblioteket i din next.config.js
fil:
const { i18n } = require('./next-i18next.config');
module.exports = {
i18n,
};
Opret en konfigurationsfil med navnet next-i18next.config.js
:
module.exports = {
i18n: {
locales: ['en', 'fr', 'es'],
defaultLocale: 'en',
},
};
Brug biblioteket i din ansøgning:
import { useTranslation } from 'next-i18next';
function MyComponent() {
const { t } = useTranslation();
return(
<div>
<p>{t('welcome')}</p>
</div>
);
}
Oprettelse af flersproget indhold
Efter installationen next-i18next
kan du oprette sprogfiler som en.json
, fr.json
, es.json
for at levere indhold på hvert sprog:
// en.json
{
"welcome": "Welcome!"
}
// fr.json
{
"welcome": "Bienvenue!"
}
// es.json
{
"welcome": "¡Bienvenido!"
}
Sprogskifte
For at tillade sprogskift kan du oprette et sprogskifteværktøj og bruge funktionen i18n.changeLanguage
:
import { useTranslation } from 'next-i18next';
function LanguageSwitcher() {
const { i18n } = useTranslation();
const handleChangeLanguage =(newLanguage) => {
i18n.changeLanguage(newLanguage);
};
return(
<div>
<button onClick={() => handleChangeLanguage('en')}>English</button>
<button onClick={() => handleChangeLanguage('fr')}>Français</button>
<button onClick={() => handleChangeLanguage('es')}>Español</button>
</div>
);
}
Konklusion
Dette afsnit introducerede dig til processen med at implementere internationalisering(i18n) i din Next.js applikation ved hjælp af next-i18next
biblioteket. Ved at levere sprogspecifikt indhold og give brugerne mulighed for at skifte sprog, kan du skabe en engagerende flersproget oplevelse for dine brugere.