Я отправляю идентификатор пользователя в навигации, но я не могу получить идентификатор на странице сведений. Вот мой код ...
<FlatList
style={{ paddingLeft: 5 }}
data={this.state.TopRatedData}
ListEmptyComponent={this._listEmptyComponent}
keyExtractor={(x, i) => i.toString()}
renderItem={({ item }) =>
<TouchableOpacity
activeOpacity={0.9}
onPress = { () => this.props.navigation.navigate("DetailDoctorscreen", {doc_id: item.ID})
}>
<TopRatedCard
profileImage={{ uri: `${item.image}` }}
specialities={`${entities.decode(item.specialities.name)}`}
name={`${entities.decode(item.name)}`}
sub_heading={`${entities.decode(item.sub_heading)}`}
total_rating={`${entities.decode(item.total_rating)}`}
average_rating={`${entities.decode(item.average_rating)}`}
/>
</TouchableOpacity>
В приведенном выше коде я отправляю doc_id
, но яЯ не могу получить его на DetailDoctorscreen
. вот код ...
fetchDoctorDetail = async () => {
const { params } = this.props.navigation.state;
console.log(this.props.navigation.state.doc_id);
const response = await fetch(
CONSTANT.BaseUrl +
"listing/get_doctor?profile_id=" + this.props.navigation.state.doc_id
);
const json = await response.json();
Alert.alert(CONSTANT.BaseUrl +
"listing/get_doctor?profile_id=" + this.props.navigation.state.doc_id);
this.setState({ fetchDoctor: json });
};
после использования getParams
...
fetchDoctorDetail = async () => {
const { params } = this.props.navigation.state;
console.log(this.props.navigation.state.doc_id);
const response = await fetch(
CONSTANT.BaseUrl +
"listing/get_doctor?profile_id=" + this.props.navigation.getParam('doc_id')
);
const json = await response.json();
Alert.alert(CONSTANT.BaseUrl +
"listing/get_doctor?profile_id=" + this.props.navigation.getParam('doc_id'));
this.setState({ fetchDoctor: json });
};