要不断尝试“获取” api。如果由于网络错误而失败

时间:2019-02-17 05:12:14

标签: javascript reactjs axios

我正在尝试Axios做出反应,一切正常,除了我想添加一项功能。通常,如果我的页面加载,它会显示一个加载器并加载,如果由于网络速度较慢,则该加载器会显示更长的时间。

现在,如果我断开了互联网连接,则会无限期显示加载程序,直到通过网络刷新页面后,它才会再进行任何调用。

我想要的是:-在显示加载程序的任何时间点(除非时间太长),它都应尝试“获取” API URL。

这是代码

componentDidMount(){
    axios.get('https://jsonplaceholder.typicode.com/posts').then(response =>{
        const posts  = response.data.slice(0,4);
        const updatedPost = posts.map((post)=>{
            return{
                ...post,
                author:'Max'
            }
        })
        this.setState({posts: updatedPost})
        console.log(response);
    }).catch((error)=>{
        if(error.message === "Network Error"){

           //What should be written here..!!! 

        }
    })
}

1 个答案:

答案 0 :(得分:2)

您可以尝试使用aws循环

while