-1

React Native를 사용하여 앱을 만들고 있는데, 말하자면 "즉시"앱 언어를 변경할 수있는 기능이 필요합니다. 나는 여기 샘플을 따라왔다 : https://github.com/appfoundry/react-native-multi-language-sample. 다음은 Redux 및 모든 부속 라이브러리를 성공적으로 설정 한 것입니다.React 네이티브 앱에서 사용자 선호도로 언어 변경

내가 겪고있는 문제는 피커가 아닌 경고 팝업에서 내 작업을 트리거하려고하는데 실제로 작업을 파견하는 데 문제가 있다는 것입니다.

환상적인 알림을 사용하여 사용자 언어를 변경하는 방법을 누구에게 보여줄 수 있다면.

감사합니다.

답변

0

나는 아이디어가 도움이 될 수있는 상황에 종사했습니다.

react-native-i18n (https://github.com/AlexanderZaytsev/react-native-i18n)을 사용하고 모든 번역본이 포함 된 파일을 만들었습니다. 이런 식으로 뭔가 :

I18n.translations = { 
    en: { 
    helloWorld: 'Hello World!', 
    loginButton: 'Login', 
    } 
} 

가 그럼 난 내 구성 요소에 수입 번역과 같이 사용되어야하는 텍스트가 포함 I 사용자 언어가 내 데이터베이스와 I에 저장 한

<View> 
    <Text>{I18n.t('helloWorld'}</Text> 
</View> 

을 그것을 얻고 내 감속기에서 사용자가 내 애플 리케이션에 로그인 할 때 설정합니다. 처음에 나는 I18n.currentLocale() 방법에서 languge를 얻는다. 내 구성 요소에서

나는 나의 감속기에서 사용자 언어를 얻을 국제화 설정에 설정 : I18n.locale = this.props.language;

을 사용자가 언어를 선택할 수 있도록 나는 피커가이 요소에서. 나는

을하는 데 도움이

componentWillReceiveProps(nextProps) { 
    I18n.locale = nextProps.language; 
    } 

이 희망 I18n.locale 값을 업데이트 할뿐만 아니라, 감속기를 내 데이터베이스를 업데이트하고 componentWillReceiveProps() 라이프 사이클을 사용하는 작업을 트리거