我正在尝试通过导航屏幕传递参数。但是,当我在子屏幕上收到参数时,它给我未定义的信息。
Parent Screen :
navigate('Screen2', {itemId: 'sales'})
Screen2
const { navigation } = this.props;
const id = navigation.getParam('itemId');
console.log(id);
结果:
未定义
答案 0 :(得分:0)
您可以尝试使用此代码
const { id } = this.props.navigation.state.params;
console.log(id);
OR
const id = this.props.navigation.state.params.id;
console.log(id);
答案 1 :(得分:0)
希望这行得通!
Parent Screen
this.props.navigation.push('Screen2', {itemId: 'sales'});
Screen2
const { id } = this.props.navigation.state.params;
console.log(id);
//Hope you're using react-navigation
答案 2 :(得分:0)
看起来,您使用getParams方法的方式不正确。尝试以下操作:
const id = this.props.navigation.getParam('itemId', 'defaultId');
否则,您也可以使用@Jothi Basu和@hong开发的解决方案。
答案 3 :(得分:0)
使用navigation.state.params
Screen2:
const id = this.props.navigation.state.params.itemId