【发布时间】:2023-08-12 09:07:01
【问题描述】:
我正在做一个网络应用程序,并且我已经在用户可以选择更改应用程序语言的部分,例如。从 en-US 到 ja,我使用的是 i18next。我所做的是将用户的首选语言写入 cookie,重新加载页面,然后读取我使用用户首选语言创建的 cookie。但是它不起作用,因为似乎每次重新加载页面时,我创建的 cookie 都会被删除,因此它会恢复为默认语言。
问题有没有办法在不删除我制作的 cookie 的情况下重新加载页面?
【问题讨论】:
-
您可能正在某处删除/清空 cookie 或未正确调用它...请发布您尝试过的代码...
-
您是否设置了到期日?您能否在
resources选项卡中检查浏览器的开发人员工具,并确定您的 cookie 的到期日期是否设置为session而不是将来的正确日期。 -
@Jorg 是的,它设置为会话。为什么?这有什么问题?
-
问题是会话在重新加载/关闭浏览器后过期。如果您希望 cookie 持续存在,则必须在其上设置日期。看我的回答。
标签: javascript cookies internationalization i18next