问题标签 [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.
next.js - NextJS 无法在域上禁用重定向
我有以下 next-i18next.config.js 文件
我已设置localeDetection
为false
,但是当我将语言从 en 更改为 fr 时,我的应用程序被重定向到http://my-domain.fr
我的 next.config.js 如下
我错过了什么吗?
typescript - Typescript next.js + i18n 的正确 getServerSideProps 语法
我正在为 NextJS Typescript 项目中的next-i18next集成而苦苦挣扎——在任何地方几乎没有最近的例子。我已经配置了国际化路由,但是只要getServerSideProps语法困扰我,我就无法正确设置 i18next。
我对 Typescript 了解不多,也不熟悉类型声明。
代码看起来像这样,大部分是从 next-i18next 文档中复制的:
在我的 IDE 中抛出关于“语言环境”的错误。即使我正在使用 getServerSideProps,我什至不确定它是否是大多数静态项目的最佳解决方案,但如果我最终计划一个 SSR,我似乎无法避免它。提供正确翻译的内容的简单方法 + 具有匹配的 URL 区域设置会很棒。
storybook - next-i18next 翻译在故事书中不起作用,控制台日志丢失键
我正在设置故事书,我正在使用我的翻译next-i18next
。这就是我的设置方式:
现在在我使用翻译的任何地方,它都没有被翻译,并且这种类型的警告正在控制台中显示:
这是我的 package.json 中用于在本地启动故事书的脚本。
Storybook 尚未设置为在网站上查看。
当我运行开发服务器时,翻译工作,只是在故事书中它不起作用。我按照本指南进行设置:https ://dev.to/justincy/using-next-i18next-in-storybook-3he9
next.js - Nextjs 检测 url 中是否存在语言环境
我正在使用 next-i18next 库和 next 的 _middleware.js 文件来检测传入请求是否具有适当的语言环境,并且在它没有将它们重定向到西班牙语版本的情况下。问题是即使我重定向到 /es/whatever-pathname 下一个请求 url 路径名和 href 总是 /whatever-pathname 它永远不会带有语言环境。有没有办法解决这个问题?
我还尝试创建 es 和 en 文件夹,并将特定语言的内容放在这些文件夹下,配置语言环境,但我只得到空白页或 404 错误。所以我对此感到非常沮丧
非常感谢任何帮助。
提前致谢
reactjs - 使“serverSideTranslations”功能通用
我有一个下一个 js 项目,我为此使用next-i18next
。翻译工作正常。但是我必须在每个组件中调用serverSideTranslations
callgetStaticProps
才能获取 i18next 道具
有什么方法可以使这个通用或在_app.tsx
文件中。所以我不必写在每个文件中。
next.js - 如何在 next.js 中管理 i18n 路由以使用斜杠而不是破折号
我有一个包含多个国家/地区的网站,每个国家/地区都有多个地区,这是我的next-i18next.config.js
想要的行为而不是/{language}-{country}/:path
我{country}/{language/:path
想知道是否有可能实现?
next.js - 设置重定向和重写,但路由器错过了自定义子路径
next.config.js
我想用我的/ko
路线去/myCustomKo
。
它仅在首先加载时才起作用。我可以看到/myCustomKo
而不是/ko
.
我用 移动路线<Link href="/">root</Link>
,我的子路径消失了。我希望它仍然/myCustomKo
不是/
。
当我尝试这个过程时/en
,一切都很完美。我点<Link />
了一下,还是这样/en
。
如何保留我的自定义子路径?
概括
当我的子路径为/en
时,我可以使用/en
.
当我的子路径是/ar
时,我也可以使用/ar
.
但是当我的子路径是时/myCustomKo
,我的路由器会错过/myCustomKo
子路径。
next.js - Next-i18Next 在 NextJS 中阻塞全局状态
我正在使用 RecoilJS 在 Next 的两个页面之间传递全局状态。这工作正常,直到我在接收变量的页面中使用 next-i18next 。如果我在接收页面的 getServerSideProps 中注释掉 next-i18next 代码,则 Recoil 原子会正确传递。
但是,我取消注释掉这段代码,我的一个变量被阻塞了。我确实需要使用 next-i18next。谁能解释为什么它被阻止?
我有三个 Recoil 原子,并且正在使用 recoil-persist 在页面之间保留数据,因为我了解 Recoil 通常不会这样做:
'newUser' 和 'newName' 都通过了,但 'newUserAvatar' 没有通过,这有什么不寻常的地方。这用于存储文件输入字段的值,并且当取消注释下一个 i18next 代码时,'newUserAvatar' 始终变为空对象并在控制台记录为 'RECOIL AVATAR: {}'
如上所述注释掉代码后,它可以工作,这是console.log:
有人可以帮忙吗?
编辑:我认为这不是 Recoil 特有的。我也尝试了 React Context API,结果相同
next.js - 如何在 NextJS 中将 next-i18next 组合到现有的 getServerSideProps 函数中
我有一个在 getServerSideProps 中使用 next-i18next 的下一页,我还有另一个使用 getServerSideProps 从 MongoDB 中提取数据的页面。两者都能正常工作。
我希望能够将 next-i18next 添加到连接到 Mongo 的函数中(基本上结合了 getServerSideProps 函数),但出现错误:
nexti18n-next 错误:初始语言环境参数未传递到 serverSideTranslations'
第一个页面的getServerSideProps函数连接next-i18n
})
第二页中的 getServerSideProps 函数从 Mongo 中拉取数据:
})
是否可以将 next-i18next 代码“添加”到第二个函数?在我看来,每个函数中定义“语言环境”和“上下文”的方式不同是个问题。我已经尝试了很多两者的组合,但最终弄乱了 mongo 查询或翻译。
这就是我认为它会完成的方式:
非常感谢任何可能的帮助!
typescript - next-i18next 设置 Cookie httpOnly 标志未设置
目前在我正在开发的应用程序中,我们已经使用 typescript 实现了 next-i18next。
我不完全确定,但我猜 next-i18next 设置了一个名为“next-i18next”的 cookie,其值为当前语言。默认情况下,此 cookie 的 http-only 属性似乎无法使用。我们要启用此功能。
我的代码是这样的:
这对我不起作用。有人知道如何启用此配置吗?欢迎不同的方法。
我正在使用的当前 next-i18next 版本是7.0.1
预先感谢您的回复。