问题描述
我需要将我们的应用程序从 create-react-app 转换为 Next.js,但我坚持使用 nextjs 的 nextI18next...
我的设置:
next.config.js:
const { nextI18NextRewrites } = require("next-i18next/rewrites");
const localeSubpaths = {
en: "en",hu: "hu"
};
module.exports = {
rewrites: async () => nextI18NextRewrites(localeSubpaths),publicRuntimeConfig: {
localeSubpaths
}
};
i18n.js
const NextI18Next = require("next-i18next").default;
const { localeSubpaths } = require("next/config").default().publicRuntimeConfig;
const path = require("path");
module.exports = new NextI18Next({
otherLanguages: ["en","hu"],defaultNS: "translate",localeSubpaths,localePath: path.resolve("./public/static/locales")
});
主页:
function HomePage({ initialData,t }) {
const homePageData = { initialData }.initialData.homePageData;
const events = { initialData }.initialData.events;
return(<>{t("highlights")}</>)
HomePage.getinitialProps = async () => {
const initialData = {};
await registerTempuser();
const homeData = await homePageData;
const events = await eventList;
initialData.homePageData = homeData.data;
initialData.events = events.data;
return { initialData: initialData,namespacesrequired: ["translate"] };
};
HomePage.propTypes = {
t: PropTypes.func.isrequired
};
export default withTranslation("translate")(HomePage);
翻译文件位于: public/static/locales/hu 和 /en
translate.json //hu
translate
{
"translations": {
"details": "részletek"
}
}
translate.json //en
translate
{
"translations": {
"details": "Details"
}
}
我做错了什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)