首页 > 解决方案 > 从抽屉导航器中反应本机传递值

问题描述

在 App.js 中

const MyApp = createDrawerNavigator({
    Home: {
        screen: Home
    },

    Form: {
        screen: Form // how to pass value Id = 0
    },
    {
      ....
     }
})

在 Form.js 中

componentDidMount() {
    if (this.props.navigation.getParam('Id', 1) !== 0) {
        ...
    }
    else {
        ...
    }
}

谁能告诉我如何实现这一目标?

提前致谢

标签: navigatordrawer

解决方案


使用屏幕道具:

const MyApp = createDrawerNavigator({
    Home: {
        screen: Home
    },

    Form: {
        screen: props => <Form {...props} id={0} />
    },
    {
      ....
     }
})

您需要使用 {...props} 传递所有道具,<Form {..props} id={0} />以便导航正常工作。

然后,您可以从表单屏幕访问道具并根据您的用例使用它。


推荐阅读