react-i18next:: 您需要使用 initReactI18next 传入一个 i18next 实例

IT技术 reactjs next.js i18next
2021-05-06 09:44:34

react-i18next:: 您需要使用 initReactI18next 传入一个 i18next 实例

我最近添加了该包并出现此错误。据我所知,我已按照所有步骤进行操作。

我将 Next.js 与next-i18next通常自动初始化一起使用

https://github.com/m2vi/downloader

2个回答

next-i18next文档

然后,我们添加serverSideTranslationgetStaticPropsgetServerSideProps在我们的页面级组件(根据您的情况)。

这意味着您需要添加serverSideTranslation到需要翻译的页面。


例如在您的pages/d/[tab]/index文件中:

import Head from 'next/head';
import { Input } from '../../../components/Input';
import YouTube from '../../../components/youtube/Main';
import { serverSideTranslations } from 'next-i18next/serverSideTranslations';

const index = () => {
    return (
        <>
            <Head>
                <title>YouTube</title>
            </Head>
            <YouTube />
        </>
    );
};

export const getServerSideProps = async ({ locale }) => ({
    props: {
        ...(await serverSideTranslations(locale, ['common']))
    }
});

export default index;

然后在您的Main组件中进一步向下,您可以documentation使用以下方法访问翻译:

t('pages.documentation')

更新 next-i18next.config.js

module.exports = {
    i18n: {
        defaultLocale: 'en',
        locales: ['en', 'de', 'fr'],
    },
    react: { useSuspense: false },//this line
};