Superagent错误处理React Javascript

时间:2017-11-16 20:57:07

标签: javascript reactjs error-handling superagent

我正在研究这个API React App。我正在使用Superagent来获取API请求。但是在没有响应时我无法处理错误。我得到了这个Uncaught(承诺)错误:HTTP响应不成功。我试图将所有代码放在try-catch中,但是这样做不会导致错误。 这是我的代码:

handleClick() {
var searchWord = this.refs.search.value;
var url = "https://restcountries.eu/rest/v2/name/" + searchWord + "?fullText=true";
Request.get(url).then((response) => {
  var res = JSON.parse(response.text);
  this.setState({
    name:res[0].name,
    flag:res[0].flag,
    capital:res[0].capital,
  });
});
}

我想处理错误,向用户打印没有找到任何内容或类似内容。

1 个答案:

答案 0 :(得分:1)

我认为应该这样做。

Request.get(url)
  .then((response) => {
    var res = JSON.parse(response.text);
    this.setState({
    name:res[0].name,
    flag:res[0].flag,
    capital:res[0].capital,
  })
.catch((err) => {console.log(err)});

基本上,您在catch()方法后追加then()