【发布时间】:2019-03-13 16:26:36
【问题描述】:
我正在尝试传递我通过扫描条形码收到的数据。我可以使用 JSON.stringify(data) 打印数据并且正在传递数据,但我似乎无法显示它。
成功传递数据:
_handleBarCodeRead = data => {
Alert.alert(
'Scan successful!',
JSON.stringify(data)
);
const { navigate } = this.props.navigation;
navigate('KnownProduct', {data})
};
正在尝试在此页面上呈现数据:
render(){
const { navigate } = this.props.navigation;
return(
<View style={styles.container}>
<Text>{this.props.navigation.state.params.data.toString}</Text>
</View>
);
我知道导航可以正常工作,因为如果我对值进行硬编码,则屏幕会在扫描条码后导航并显示硬编码值。但是,我想我试图错误地调用数据: this.props.navigation.state.params.data.toString 但没有运气弄清楚如何显示传递的数据。
任何反应本地专家能够帮助新手?
好的....所以我想通了...感谢一位评论者指出我应该像这样传递数据:
navigate('KnownProduct', {data: data})
然后重定向页面中缺少的是:
<Text>{this.props.navigation.state.params.data.data}</Text>
data.data 抓住了我!
【问题讨论】:
-
我相信您需要为您的数据传递一个名称,例如:
navigate('KnownProduct', { data: data }); -
怎么样
toString()而不是简单的toString
标签: react-native react-navigation