角度サービスのメソッドの1つは、コンポーネントが購読されているObservableを返します。しかし、その方法でも返される約束があり、それが拒絶を返す場合にそれを捕まえることができるようにしたい。以下のコードの断片を探す:observableにラップされた約束エラーをキャッチする - 角度2
return this.http.get(url)
.map(res => res.json())
.map((data: any) => {
try {
if (data === "14") {
this.nativeService.set(value)
.then(() => {
console.log('ok');
})
.catch((err) => { throw new Error(); //error that I want to catch
})
}
}
catch (err) {
throw new Error();
}
return data;
})
.catch((err) => this.handleError(err));
このnativeServiceは、現在のデータが返されるものの、次の
set(value: any): Promise<any> {
return new Promise((resolve, reject) => {
reject('');
})
}
を返す嘲笑されます。次に、エラーがスローされ、handleError()メソッドを呼び出すためにそれを捕まえることができません。私は約束が非同期呼び出しであることを理解しています。誰かがサービスによって返されたエラーをキャッチするためにコードをどのように並べ替えるべきかアドバイスできますか?あなたが観測からデータを返す方法を
おかげで、 アシュリー
は 'set(value)'か 'set(data)'ですか? –
@surajはい設定データ。 – ashley