React、i18next 和 HTML 属性 lang

6

我使用 React+i18next 在我的网站上有两种语言。

如何更改页面中的 HTML 'lang' 属性?

我使用 i18next-browser-languagedetector 但是 lang 属性没有改变。

2个回答

9

我解决了这个问题。

我在我的App.js文件中添加了以下代码:

document.documentElement.lang = i18n.language;


太棒了!多么优雅的解决方案。 - vsync

1
如果您正在使用界面让用户选择/更改的活动语言,那么这里有一种方法可以向实例添加回调函数,以保持HTML的lng标签与同步。
i18n.on('languageChanged', (lng) => (document.documentElement.lang = lng))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接