问题标签 [next-i18next]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
localization - i18next 不会在 nextjs 应用程序中更改语言
我正在尝试使用 i18next 进行本地化,它可以很好地将英语文本翻译成阿拉伯语{t("title")} ==> مرحبا
。但是,当我尝试将语言更改为英语时,
const { t, i18n } = useTranslation()
i18n.changeLanguage('en')
它并没有改变。如何解决这个问题。
我在服务器 vscode terimanl 收到了那个错误react-i18next:: You will need to pass in an i18next instance by using initReactI18next
next.js - 添加 next-i18next 后,我在 vercel 中得到一个 404 页面
我为国际化添加了应用程序 next-i18next。之后vercel中的所有页面都变成了404页面。
顺便说一句,它在本地完美运行。
为什么??
以上是我网站的网址。日志中有这个错误。
reactjs - 可以在 next-i18next 中使用 redux store 作为翻译资源吗?
我有一个使用 contentEditable 文本设置的网站,这是用户可以编辑的文本内容,我需要设置翻译,以便当用户编辑此文本时,它会在 translations.json 文件中更新。我设置了一个 redux 存储,其中存储看起来与传递给资源的 translations.json 文件的外观完全相同。问题是我真的不知道如何让 next-i18n 使用这个商店作为翻译资源。
这就是 next-i18n 文档说我应该在配置中设置翻译的方式:
配置可以包含资源,但我不能在 getServerSideProps 中使用 redux 选择器。
reactjs - Fetch API 无法加载 webpack-internal:///./node_modules/next-i18next/dist/esm/appWithTranslation.js。不支持 URL 方案“webpack-internal”
安装 next-i18next 后,即使在我不使用它的页面中,我也会不断收到此错误。我不知道如何解决它。谢天谢地,它没有破坏任何东西,但这是我的 next-i18next.config.js
这是我页面中的 getServerSideProps,(baseUrl 是一个单独的东西,不必与翻译一起使用)
和我的 _app.js
next.js - next-i18next 更改语言环境子路径
我正在使用 next.js 11.1.0 + next-i18next 8.5.3。有了新版本的next和i18next,我不知道如何重写子路径。所以,我有一个多语言应用程序。并且在内容上有 en-GB/en-US/en-AU 差异很重要。
我根据官方自述文件 https://github.com/isaachinman/next-i18next进行了配置
所以我有
下一个 i18next.config.js
和 next.config.js
主要问题是,我不知道如何在新版本中重写子路径。
我希望如果它检测到 en-AU 它会生成子路径 au
它应该是 site.com/au,现在我有了 site.com/en-AU
reactjs - 从 api 端点在 next-i18next 中加载 i18n 资源,不会触发 http 请求
我目前正在尝试将其集成next-i18next
到i18next-http-backend
我的 nextjs 项目中,以便从后端端点加载本地化定义。
但是使用以下配置,不会向后端发出 http 请求,也不会向控制台打印错误。
在我的 nextjs 页面上,我也在调用serverSideTranslations
.
next.js - 无法在 Vercel 上使用 serverSideTranslations
在我的索引页面中,我正在使用serverSideTranslations
函数。获取有关查找翻译文件的错误。此错误仅发生在 . 使用的页面上serverSideTranslations
。
我部署到 Vercel 和 Netlify。在他们两个我都有同样的错误。
在_app.js
我使用appWithTranslation
.
依赖项:
next.config.js
下一个 i18next.config.js
Vercel lambda 函数的错误消息
ng 请求:错误:ENOENT:没有这样的文件或目录,在 getLocaleNamespaces(/var/task/node_modules/next -i18next/dist/commonjs/config/createConfig.js:175:23) at /var/task/node_modules/next-i18next/dist/commonjs/config/createConfig.js:181:20 at Array.map () at getNamespaces (/var/task/node_modules/next-i18next/dist/commonjs/config/createConfig.js:180:44) 在 createConfig (/var/task/node_modules/next-i18next/dist/commonjs/config/createConfig.js: 221:29) 在 _callee$ (/var/task/node_modules/next-i18next/dist/commonjs/serverSideTranslations.js:199:53) 在 tryCatch (/var/task/node_modules/regenerator-runtime/runtime.js:63) :40) 在 Generator.invoke [as _invoke] (/var/task/node_modules/regenerator-runtime/runtime.js:294:22) 在 Generator。下一个 (/var/task/node_modules/regenerator-runtime/runtime.js:119:21) { errno: -2, syscall: 'scandir', path: '/var/task/public/locales/he' }
next.js - 在 vercel 上部署后,next-i18next 无法在动态页面中使用 serversideprops
我正在使用next-i18next模块来支持多语言。
我也有一些静态页面和动态页面。两者都在本地工作正常。
我在vercel上部署了所有静态页面,在vercel上一切正常。但是动态页面不适用于vercel。它显示该动态页面的 404 页面。
下面是动态页面的代码。(pages/test-page/[questionId].js)
如何解决这个问题?
javascript - 如何从 Next Js 中的 URL 获取语言环境值
在 Next Js 应用程序中,我使用next-i18next
模块来支持多语言。它工作正常。
NabBar 组件代码:
单击阿拉伯语,它/ar
在域之后应用。例如http://localhost:3000/ar
但现在我想在所有页面中显示选定的单选按钮。谁能建议我如何显示与所选语言相对应的选中单选按钮。