react-native-navigation如何检测`shouldComponentUpdate`中的当前屏幕

时间:2018-02-06 05:47:01

标签: reactjs react-native react-native-navigation wix-react-native-navigation

我使用react-native-navigation并使用redux进行状态管理。当我用" push"进入screenA到screenB时方法和screenA不会卸载。这将导致不必要的重新渲染,并且之前在react-navigation中我使用了shouldComponentUpdate来匹配组件与当前可见的屏幕以停止重新渲染。

有没有办法在react-native-navigation中执行此操作?

1 个答案:

答案 0 :(得分:2)

当您设置导航器事件处理程序(使用addOnNavigatorEvent)时,您可以跟踪屏幕生命周期事件,并在屏幕消失或出现时收到通知。

或者您可以使用await this.props.navigator.screenIsCurrentlyVisible()检查屏幕当前是否可见,但我不确定在shouldComponentUpdate中执行此操作的含义是什么,因为它执行需要的本机调用过桥,可能会增加不必要的延误。

您可以详细了解屏幕可见性here