以下代码可在正常的React项目中运行(如果有问题,我正在使用打字稿):
import {t} from "i18next";
const translation = t('WelcomeMessage');
相同的代码在React Native项目中不起作用,并给出错误:
import i18n, {t} from "i18next";
const translation1 = i18n.t('WelcomeMessage'); //works ok
const translation = t('WelcomeMessage'); //ERROR: (0, _i18next.t) is not a function
为什么t('WelcomeMessage')
在RNative中不起作用?
export = i18next;
)中导出有关?
答案 0 :(得分:0)
您可以使用i18n-js
实现此功能
https://github.com/fnando/i18n-js/releases
创建一个.js
文件。
import i18n from 'i18n-js';
import en from '../translations/en.json';
import ar from '../translations/ar.json';
i18n.fallbacks = true;
i18n.translations = { en, ar };
export default i18n;
在组件类中调用此i18n.js文件
import i18n from './i18n'
class Test extends Component {
render(){
return(
<Text>i18n.t('sample')</Text>
)
}
}