我有这个异步函数,它在promise中使用http.get。在http.get catch块中拒绝承诺
private _getSchema(fileName): any {
return new Promise((resolve, reject) => {
this.http.get(fileName)
.map(this._extractData)
.catch(this._handleError)
.subscribe(schema => resolve(schema));
});
};
比在catch块调用this._handleError相反,我想拒绝我的诺言,并通过拒绝错误对象。我怎么做?
尝试:
private _getSchema(fileName): any {
return new Promise((resolve, reject) => {
this.http.get(fileName)
.map(this._extractData)
.catch(err => reject(err))
.subscribe(schema => resolve(schema));
});
};
给出了错误:
Argument of type '(err: any) => void' is not assignable to parameter of type '(err: any, caught: Observable) => ObservableInput<{}>'. Type 'void' is not assignable to type 'ObservableInput<{}>'.
我使用打字稿
只是'.catch(拒绝)'工作? – dandavis