سلام دوستان
مشکلی که برای من به وجود اومده این هستش که زمانی که fetch شروع میکنه به دریافت اطلاعات تا گرفتن response اگر روی button تاچ کنید اون button کار نمی کنه...
راه حلی برای این مشکل دارید؟
سعی کنید جهت راهنمایی گرفتن کدهای مربوطه رو برای سایرین قرار بدین.
اینطوری حل مسئله راحت تر میشه.
componentDidMount() {
this.refreshFlatList();
}
refreshFlatList = () => {
let temp = [{key: 'page', value: 1}, {key: 'page_size', value: 50}];
temp.push({key: 'qf_state', value: this.props.myCity.id});
this.getAdsData(temp, true);
};
getAdsData(queryParameter, isRefresh) {
if (isRefresh) {
if (!this.state.isRefreshing) {
this.setState({isRefreshing: true});
}
} else {
this.setState({isLoading: true});
}
let url = domain + post_values_v4 + keyValueToParams(queryParameter);
let httpOptions = {
headers: {
'Authorization': this.props.token,
},
method: 'GET',
};
fetch(url, httpOptions).then((response) => {
return response.json();
}).then((responseData) => {
this.setState({
adsFlatListData: responseData.content,
isRefreshing: false,
isLoading: false,
});
}).catch((error) => {
this.setState({
isRefreshing: false,
isLoading: false,
});
})
}
render(){
return (
<FlatList
data={this.state.adsFlatListData}
keyExtractor={(item, index) => String(index)}
refreshControl={
<RefreshControl
refreshing={this.state.isRefreshing}
onRefresh={() => {
this.refreshFlatList()
}}
/>
}
renderItem={({item, index}) => {
return <AdsListPure item={item}
index={index}
onPress={() => {
this.onRowPress(item)
}}/>
}}
/>
);
}
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟