Эй, вы можете обрабатывать axios
в следующих подходах
Обещание подхода
componentDidMount(){
axios.get('http://api.myslambook.in/swagger/#/users/', {
auth: {
username: 'xxxx',
password: 'xxxxx'
}
}).then(res => {
this.setState({
serverData: res.data.serverData
});
}).catch(err => console.log(err));
}
Асинхронный / ожидающий подход
async componentDidMount(){
try {
let response = await axios.get('http://api.myslambook.in/swagger/#/users/', {
auth: {
username: 'xxxx',
password: 'xxxxx'
}
})
this.setState({
serverData: response.data.serverData
});
} catch (error) {
console.log(error)
}
}
Для получения дополнительной информации проверьте приведенный ниже пример кода.
import React from 'react';
import { FlatList, ActivityIndicator, Text, View } from 'react-native';
import axios from 'axios';
export default class FetchExample extends React.Component {
state = {
isLoading: true
}
componentDidMount(){
return axios.get('https://facebook.github.io/react-native/movies.json')
.then(res => {
this.setState({
isLoading: false,
dataSource: res.data.movies,
});
})
.catch((error) =>{
console.error(error);
});
}
render(){
if(this.state.isLoading){
return(
<View style={{flex: 1, padding: 20}}>
<ActivityIndicator/>
</View>
)
}
return(
<View style={{flex: 1, paddingTop:20}}>
<FlatList
data={this.state.dataSource}
renderItem={({item}) => <Text>{item.title}, {item.releaseYear}</Text>}
keyExtractor={({id}, index) => id}
/>
</View>
);
}
}
Надеюсь, это поможет вам. Не стесняйтесь сомнений.