当前位置 : 主页 > 网页制作 > React >

reactjs – 如何在视图加载时更改导航栏标题

来源:互联网 收集:自由互联 发布时间:2021-06-15
我需要读取一个值并使用它在导航栏中设置标题. 我正在使用react-native-router-flux,我也使用redux. 我导航到查看我设置语言和fire redux动作的位置. 所有视图都接收新状态,在render()方法中我可
我需要读取一个值并使用它在导航栏中设置标题.
我正在使用react-native-router-flux,我也使用redux.
我导航到查看我设置语言和fire redux动作的位置.
所有视图都接收新状态,在render()方法中我可以调用:

console.log(this.props.language.language)

这是通过redux设置的.
我想改变导航栏标题,如:

Actions.refresh({title: I18n.t('main', {locale: this.props.language.language})})

但这会降低应用程序的速度并且不起作用.
但是如果不在渲染方法中,不知道放在哪里.

您不应该在渲染方法中修改状态 – 这将导致无限循环的更改状态导致重新渲染.

相反,你应该把它放在一个生命周期方法中:

componentDidMount () {
  Actions.refresh(...)
}

首次安装组件时将触发该触发器.

网友评论