【问题标题】:Wrong language detected when using Javascript navigate method使用 Javascript 导航方法时检测到错误的语言
【发布时间】:2020-12-09 09:04:17
【问题描述】:

我正在构建一个 React JS 网站,但遇到了与导航器问题相关的问题。 我的默认浏览器是 Chrome,并使用英语作为语言。当我登录 navigator.language 时,它​​给了我“he-IL”,我确实使用它,但不是作为默认语言。在 navigator.languages 中,我得到以下数组:[“he-IL”、“en-US”、“en”、“he”]。

有没有办法将其设置为仅在使用 navigator.language 时检测英语? 还是我必须从数组中获取它?

【问题讨论】:

    标签: javascript reactjs navigator


    【解决方案1】:

    我想在导航器函数中使用的默认语言是用户特定的,它返回一个代表用户首选语言的 DOMStrings 数组。您尝试返回相关语言的数组列表?。在返回的数组中,它们按首选语言排序。

    可以通过更改浏览器设置轻松更改该属性。目前,我认为你的默认是he-IL,所以需要将默认更改为英文。

    我的工作正常,

    navigator.languages 返回 ["en-US", "zh-CN", "ja-JP"]

    【讨论】:

    • 要将语言更改为首选语言:打开浏览器设置和“内容”选项卡。在语言标题下,通过从提供的列表中选择所需的语言或语言+地区组合来选择您的首选语言。然后调整顺序以表明您的偏好顺序
    • 那么 navigator.languages 数组返回 ["he-IL", "en-US", "en", "he"],英语被设置为默认值。好吧,我确实最终完全删除了希伯来语来解决这个问题。只是想知道我是不是做错了什么。谢谢!
    • 理想情况下,它设置为浏览器的默认语言,导航器是一个只读对象,它显示我们的浏览器属性。您是否尝试再次添加希伯来语,然后我们可以检查英语是默认还是希伯来语覆盖英语作为默认。 (如果是后者,您仍然可以复制您所做的程序)
    【解决方案2】:

    我遇到了同样的问题,所以我登陆了这个页面......

    似乎即使将一种语言设置为默认语言,navigator.language 也会始终返回列表中的第一种语言。

    您可以轻松地重新排列您使用的语言列表,并将您的“默认语言”放在首位。 ;-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-01
      • 1970-01-01
      • 2021-09-26
      • 1970-01-01
      • 1970-01-01
      • 2019-12-19
      • 2021-12-22
      • 2021-05-28
      相关资源
      最近更新 更多