反应导航-未定义this.pros.navgation.state [英] React Navigation - this.props.navigation.state is undefined

查看:33
本文介绍了反应导航-未定义this.pros.navgation.state的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用: "@REACT-导航/抽屉":"^5.4.0", "@REACT-导航/本机":"^5.1.4",

App.js:

    import { createDrawerNavigator } from '@react-navigation/drawer';
    ...
    const Drawer = createDrawerNavigator();
    const DrawerRender = () => {
    return (
      <NavigationContainer>
        <Drawer.Navigator drawerContent={props => <DrawerContent {...props} />}>
          <Drawer.Screen name="Home" component={Home} />
          <Drawer.Screen name="Screen1" component={Screen1} options={{unmountOnBlur: true, gestureEnabled: false}} />
          <Drawer.Screen name="Screen2" component={Screen2} options={{unmountOnBlur: true, gestureEnabled: false}} />
        </Drawer.Navigator>
      </NavigationContainer>
    );}

从屏幕1:

    navigateToPage = page_id => {
      this.closeCommentScreen();
      this.reopenModal = true;
      this.props.navigation.navigate('Screen2', {'page_id': 'testing'});
    }

屏幕2:

    export default class Screen2 extends React.Component {

    constructor(props) {
       super(props);
    }
    componentDidMount() {
       let id = this.props.navigation.state.params.page_id
       ...

我尝试打印"this.pros.boot",但它始终返回空词典{},因此未定义params。

我做错了什么?

推荐答案

它是this.props.route.params

请参阅升级指南https://reactnavigation.org/docs/upgrading-from-4.x#separate-route-prop

这篇关于反应导航-未定义this.pros.navgation.state的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆