React Native语言更改不会立即产生影响

时间:2019-05-06 09:47:20

标签: react-native react-native-android react-native-ios i18next

我在项目中使用react-native-i18n。将语言更改为阿拉伯语后,所有文本数据将自动正确对齐到屏幕的右侧。但是,所有其他组件(例如,图标)仅在重新打开应用程序后才能对齐。

export function langSet(type){
    if(type == "en"){
    I18n.locale = type;
    const currentLocale = I18n.currentLocale();
    }else{
        I18n.locale = type;
        const currentLocale = I18n.currentLocale();
        ReactNative.I18nManager.allowRTL(true);
        ReactNative.I18nManager.forceRTL(true);
    }
}

1 个答案:

答案 0 :(得分:0)

仅当您刷新DOM时,语言才会出现,为此,您必须进行更改以使DOM刷新, 成为愚蠢的国家

state = { languageChange : false }

然后在将语言切换到该语言之后将状态更改为

this.setState({ languageChange: !this.state.languageChange ) }