111*_*110 5 reactjs react-native react-redux react-native-router-flux
我需要读取一个值,并用它在导航栏中设置标题。
我正在使用react-native-router-flux
,我也使用redux。
我导航查看设置语言和触发redux动作的位置。
所有视图都接收新状态,并且可以在render()
方法中调用:
console.log(this.props.language.language)
Run Code Online (Sandbox Code Playgroud)
这是通过redux设置的。我想更改导航栏标题,例如:
Actions.refresh({title: I18n.t('main', {locale: this.props.language.language})})
Run Code Online (Sandbox Code Playgroud)
但是,这会使应用程序变慢,并且无法正常工作。
但是,如果不使用render
方法,则不知道将其放在何处。
您不应该在render
方法中修改状态 - 这将导致状态更改的无限循环,从而导致重新渲染。
相反,您应该将其放入生命周期方法中:
componentDidMount () {
Actions.refresh(...)
}
Run Code Online (Sandbox Code Playgroud)
当组件首次安装时将被触发。
归档时间: |
|
查看次数: |
968 次 |
最近记录: |