为了账号安全,请及时绑定邮箱和手机立即绑定

我们如何在 React Native 中使用 navigationOptions 将状态作为

我们如何在 React Native 中使用 navigationOptions 将状态作为

噜噜哒 2022-05-26 17:16:29
我是 React Native 的新手,我想问一下我们如何使用 navigationOptions 将功能组件中的钩子状态传递到另一个屏幕这是代码:const Screen = props => {const [eventName, setEventName] = useState('');  React.useLayoutEffect(() => {    props.navigation.setOptions({      headerRight: () => (        <HeaderButtons HeaderButtonComponent={HeaderButton}>          <Item             title="Finish"            iconName={Platform.OS === 'adroid' ? 'done-all' : 'done-all'}            onPress={() => {              props.navigation.navigate('TripsListDetailScreen', {                final_eventName: eventName,              })            }}          />      </HeaderButtons>    )    });  }, [props.navigation]);return(...);}我正在尝试将其传递eventName到另一个屏幕。由于我们必须在组件外部设置headerRight使用样式,navigationOptions例如:Screen.navigationOptions = data => {    return(        headerTitle:...,        headerRight: ....)}我们不能在那里传递参数。所以我尝试了文档React.useLayoutEffect()中描述的但是屏幕抛出错误:
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

我知道现在问题出在哪里。当我登录时,props.navigation它没有该setOptions功能。此外,当我回顾文档时,我发现这是因为我使用的版本。

我正在使用 reac-navigation v4,但props.navigation.setOptions仅在 v5 中可用。

太遗憾了 :(

感谢@norbitrial 为我指出这一点

如果您有任何答案,无论版本问题的问题,我都会很高兴知道!


查看完整回答
反对 回复 2022-05-26
  • 1 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信