如何从i18next获取localeCompare的语言环境?

时间:2020-11-04 01:50:18

标签: javascript i18next

我们的项目正在使用i18next进行翻译,目前我需要使用String.prototype.localeCompare来对字符串进行排序

我应该如何从i18next获取诸如'en''fr''en-US'等的代码? i18next是否默认为特定代码?我需要使用i18next实例还是默认导出?

我相信这些可以称为“ BCP 47语言标签”

谢谢

1 个答案:

答案 0 :(得分:0)

好,所以简短的答案是您只使用i18next.language

在我们的例子中,使用正确的实例(不仅仅是默认的导入)确实很重要。我们还使用了一个名为react-i18next的附加层,如下所示。

import { I18nContext } from "react-i18next";

...

const { i18n } = useContext(I18nContext);

...

return isLocaleCompareSupported()
    ? aText.localeCompare(bText, i18n.language)
    : aText.localeCompare(bText);