如何在React Native导航器中传递参数?

5

我尝试了一个React Native Navigator的例子:

const StudentStackNav = StackNavigator({
  Home: {
     screen: StudentLogin,
    }
});

如何将参数传递给StudentStackNav并将其传递给StudentLogin?

我尝试使用<StudentStackNav name='Lucy'>,但是this.props.nameHome中不可用。


1
请查看“入门”、“传递参数”部分:https://reactnavigation.org/docs/intro/#Passing-params - Ivan Chernykh
@Cherniv 实际上,我想要将参数传递给导航器而不是屏幕。 - PYL
1个回答

14

Navigator组件上的普通props可用于配置导航器。

要向屏幕发送任意props,必须使用screenProps

因此,例如:

<StudentStackNav screenProps={{ name: 'Lucy' }}/>

将在StudentLogin中作为this.props.screenProps可用。

screenProps此页面上有记录。


这个答案是正确的,比React Native网站上的文档更有用。需要注意的是,即使很少有人这样做,你也可以从类的构造函数中访问这些属性:class Foo extends Component { constructor(props) { super(props); props.screenProps // what you want to access } render() { return null; } } - user883210

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接