2017-03-06 1 views
0

I18n.t 도우미와 함께 :반응-REDUX - 국제화 로케일 업데이트를 내가 <code>react-redux-i18n</code>을 사용하고 있는데 내가 <code>react-redux-i18n</code>의 setLocale에 파견 액션 호출 나는 버튼이있는 <code>I18n.t helper</code></p> <p>를 업데이트하는 문제에 봉착

을 그것은 I18n._locale를 변경 않지만

export default function setLanguage(language: string) { 
    return async (dispatch) => { 
    dispatch(setLocale(language)); 
    }; 
} 

, 그것은 다시 렌더링하지 않고 트란 :이 함수를 호출

<FlatButton 
     label={languageToDisplay} 
     labelStyle={styles.buttonLabel} 
     onClick={() => this.props.actions.setLanguage(languageToDisplay)} 
     style={styles.button} 
     /> 

텍스트 슬레이트. 누구나 그것을 할 수있는 방법에 대한 아이디어를 얻었습니까? 내가 react-redux-i18n을 사용하고

나는 것입니다 번역 할 react-native 방법을 좋아하기 때문에 : I18n.t(...)

그것은 깨끗하고 단지 같은 <FormationMessage /> 또는 <Translate />

만약 번역 이상한 구성 요소를 강요하지 않는 사람 문제를 해결하거나 다른 라이브러리를 react-redux-i18n과 같은 번역 스타일로 알려주십시오.

답변

1

import React, { Component } from 'react'; 
import { connect } from 'react-redux'; 

@connect(state => ({ 
    i18n: state.i18n, // <= this makes your component rerender on language change 
}), dispatch => ({ dispatch })) 
class SomeClass extends Component { 
    ...... 
} 

더 나은 접근 방법이 있다면 알려주십시오.

관련 문제