0

我的代码在 React Navigation V3 上运行没有问题,但是在更新到版本 5 之后。我有一段代码来获取活动屏幕的路线名称,但是在更新到版本 V5 之后,this.props.navigation。 state.params 未定义。

这段代码不再起作用 react navigation V5

const activeScreen = this.props.navigation.state.routes[
  this.props.navigation.state.index
].routeName;

谢谢您的回答

4

1 回答 1

1

对于参数,您需要使用useRoute(或this.props.route)

const params = useRoute().params

https://reactnavigation.org/docs/en/route-prop.html

对于导航器的状态,您需要使用useNavigationState

const focusedRoute = useNavigationState(state => state.routes[state.index]):

https://reactnavigation.org/docs/en/use-navigation-state.html

于 2020-02-22T02:23:57.383 回答