【发布时间】:2021-06-26 07:34:10
【问题描述】:
在我们的 Next.js 应用程序中,我们使用 vinissimus/next-translate 包进行翻译。 我们进行了相应的设置:
next.config.js:
const nextTranslate = require('next-translate')
module.exports = nextTranslate()
i18n.js 配置文件:
{
"locales": ["en"],
"defaultLocale": "en",
"pages": {
"*": ["en"],
"/": ["en"],
}
}
通过 useTranslation 钩子在组件内使用它:
const App = () => {
const { t, lang } = useTranslation();
return (
<Homepage>
<span>{t(`${lang}:homepage.title.header`)}</span>
</Homepage>
我的问题是如何用 react-testing-library 开玩笑地测试它?
当我在测试中渲染我的组件时,翻译不起作用,只返回键。另外,我想通过 getByText / findByText 测试它并通过:
{t(`${lang}:homepage.header`)}
如果我没有在应用程序中使用任何 i18nProvider 而只使用这个 i18n.js 配置,我该如何设置某种包装器或配置来进行测试? p>
【问题讨论】:
标签: reactjs jestjs next.js internationalization react-testing-library