传递参数到路线和导航道具之间的混淆

时间:2019-12-22 19:23:28

标签: reactjs react-native jsx

我习惯于使用类似的方法将道具传递到另一个屏幕。

this.props.navigation.navigate('CreateUser', { Username: 'Jack' });                     

但是,例如,我想将值传递给与我导航到的屏幕不同的屏幕 我想导航到CreateUser,但想将itemId传递给MainScreen。

我尝试了

this.props.navigation.setParams({ Username: 'Jack' })}
this.props.navigation.navigate('CreateUser');   

然后,一旦进入MainScreen,我尝试使用以下命令获取Username参数:

const Username = this.props.navigation.getParam(Username);

但是没有用。知道我的代码有什么问题吗? setParams也是全球性的吗?该变量将被所有类访问吗?还是应该指定将参数保存到哪个类?如果我应该使用setParam或setState

,我也会感到困惑

谢谢

2 个答案:

答案 0 :(得分:0)

您可以在任何可能的地方强制更改导航状态,例如:

navigation.state.params.username = Jack

答案 1 :(得分:0)

尝试一下:

enter 3 letters
1
try again
2
try again
a
enter the 2nd
w
enter the 3rd
4
try again
5
try again
p