繁体   English   中英

带有 i18next 的多语言网站。 记住语言选择

[英]Multiple languange website with i18next. Memorize language choice

我正在建立一个多语言网站。 问题是重新加载页面时不会记住语言选择。

我的网页由一个登录页面和一些包含附加信息的其他页面组成。 我希望在加载其他页面时也能记住并应用语言选择。 链接到我的页面: https://merry-sprite-2d2487.netlify.app/index.html

为了实现多语言,我使用了这个指南和基本相同的代码: https://idesignzone.com/how-to-create-a-multilingual-website-in-html/#comment-48

我对编码很陌生,刚刚学会了它来创建我的网站。 如果回答,请保持简单易行;)谢谢!

我试图用 lng: localStorage 替换 lng: "eng"。 获取项目(键)|| “eng”正如另一篇文章中所建议的那样,但它没有加载任何东西。

你有3个选择:

最初,您检测导航器语言并使用您在存储方式中做出的选择来存储它。 每次用户选择另一种语言时,您都会以同样的方式更新此值。

在页面加载时,首先读取值,如果没有检测到导航器语言并存储它

  • 曲奇饼
  • 本地存储
  • URL,#后加en=XX

我不会描述所有的方法,你可以在搜索中很容易地找到很多。

但有利有弊(我的意见而已,当然其他人可以有其他意见)

饼干专家

  • 使用方便
  • 用户 cookie 缺点不可见
  • 某些浏览器可能会有奇怪的行为
  • 通常情况下,如果是欧盟,你必须在开始时制作一个框消息说你正在使用 cookie,并且用户必须同意

本地存储专家

  • 使用方便
  • 用户 localStorage 缺点不可见
  • 几乎没有

URL 亲

  • 它是可见的:你、用户和 SEO 看到它 URL 缺点
  • 它是可见的(呵呵):用户看到它
  • 实施起来更难,不是很多,而是更难

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM