我有这个异步函数,它在承诺中使用 http.get。
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));
});
};
给出错误:
'(err: any) => void' 类型的参数不能分配给'(err: any, catched: Observable) => ObservableInput<{}>' 类型的参数。类型 'void' 不可分配给类型 'ObservableInput<{}>'。
我正在使用打字稿