Javascript angular2承诺问题

Javascript angular2承诺问题,javascript,angular,promise,Javascript,Angular,Promise,我在从API捕获错误时遇到了问题。正如您在下面看到的,我在单击delete按钮时调用deletedJob方法,该函数调用jobService的“deleteJob”函数 组件中 deleteJob(id) { this.jobService.deleteJob(id, this.shopId) .then(res => { console.log('response'); // Displaying the success me

我在从API捕获错误时遇到了问题。正如您在下面看到的,我在单击delete按钮时调用deletedJob方法,该函数调用jobService的“deleteJob”函数

组件中

deleteJob(id) {
   this.jobService.deleteJob(id, this.shopId)
        .then(res => {
          console.log('response');
          // Displaying the success message         
        })
        .catch(this.handleError)
      }
    });
  }
jobService组件中的deletedJob函数

 deleteJob(id: number, shopId: number) {
    let url = this.jobsUrl() + `/${id}.json`;
    return this.http
      .delete(url)
      .toPromise()
      .then(res => res.json().response)
      .catch(this.handleError);
  }
上述函数的handleError函数

 handleError(error: any) {
    return Promise.reject(error.message || error);
  }

所以,当通过handleError函数拒绝该错误时,我在控制台“TypeError”中得到一个错误:您在需要流的地方提供了“undefined”。您可以提供一个可观察的、承诺的、数组的或可观察的。

您到底在这里做什么?res.json().response在组件一中,可能需要返回承诺。@masterfan您可以假设“res.json()”返回一个对象,即{response:'aa'}。问题是,当我们调用deleteJob方法时,服务器会给出一个错误,响应会转到服务的catch块。在调用
handleError
时,您没有返回任何参数?您到底在这里做什么?res.json().response在组件一中,可能需要返回承诺。@masterfan您可以假设“res.json()”返回一个对象,即{response:'aa'}。问题是,当我们调用deleteJob方法时,服务器会给出一个错误,响应会转到服务的catch块。在调用
handleError
时,您没有返回任何参数吗?