请帮助我。
错误-
i18next::pluralResolver:您的环境似乎与 Intl API 不兼容,请使用 Intl.PluralRules polyfill。将回退到兼容性JSON v3 格式处理
代码-
import i18n from "i18next";
import english from './englist.json';
import thai from './thai.json';
import { initReactI18next } from "react-i18next";
i18n.use(initReactI18next).init({
lng:'th',
fallbackLng: 'en',
resources:{
en:english,
th:thai
},
interpolation: {
escapeValue: false
},
react:{
useSuspense:false,
}
});
export default i18n;
看起来像是 Android 上的问题。
i18n.use(initReactI18next).init({
compatibilityJSON: 'v3', // <--- add this line
lng:'th',
fallbackLng: 'en',
resources:{
en:english,
th:thai
},
interpolation: {
escapeValue: false
},
react: {
useSuspense:false,
}
});
它应该可以解决您的问题。您可能需要检查this。
玩得开心。
我也遇到了同样的问题,使用
compatibilityJSON V3
模式意味着这会在我的 IOS 模拟器上出现问题,因为我实际上使用的是复数形式,并且使用的是 i18n-next 的最新版本(v21)
就我而言,我可以通过填充来修复它
intl-pluralrules
看看 https://github.com/eemeli/intl-pluralrules 和 https://www.i18next.com/misc/migration-guide
npm install intl-pluralrules
要用作填充,只需导入它以确保
Intl.PluralRules
是
在您的环境中可用:
import 'intl-pluralrules'
如果
Intl.PluralRules
已经存在,
包括一个 selectRange()
方法,
并支持多个语言环境,
Polyfill 将不会被加载。