我使用this.props.navigation.navigate('Details',{activity: item})
将项目传递到新页面。我想通过使用此活动提出获取请求。我不知道如何将项目传递给API请求。有人可以回答我吗?
register = async () =>{
var token = await AsyncStorage.getItem('id_token')
console.log(token)
fetch('http://192.168.0.1:8887/api/auth/activities/register',{
method: 'POST',
headers:{
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Bearer ' +token,
},
body: JSON.stringify({
})
})
}
render(){
const { activity } = this.props.route.params;
return (
<View style={styles.container}>
<ScrollView style={styles.content}>
<Text style={styles.data}>Title:</Text>
<Text style={styles.info}>{activity.name}</Text>
</ScrollView>
<Button title="register" onPress={this.register}></Button>
</View>
)
}
在这种情况下,如何将数据传递给提取?
答案 0 :(得分:2)
所有其他提示您应将其添加到状态的答案都是错误的。您可以像在render
函数中所做的一样检索值。
register = async () =>{
const { activity } = this.props.route.params;
const token = await AsyncStorage.getItem('id_token')
fetch('http://192.168.0.125:8887/api/auth/activities/register',{
method: 'POST',
headers:{
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Bearer ' +token,
},
body: JSON.stringify({ activity })
});
}