私は以下の方法をサービス内に設けています。この方法は、特にユーザープロファイルをエキサイティングなものにしません。firebaseからの例外をキャッチ - AngularFire2
// Save user Profile
saveProfile(user: User): Observable<Response> {
return Observable.fromPromise<Response>(
this.af.database.object('/users/' + user.userId).update({
first_name: user.first_name,
display_name: user.display_name,
biography: user.biography,
intent: user.intent,
seeking: user.seeking,
training: user.training,
dayDOB: user.dayDOB,
monthDOB: user.monthDOB,
yearDOB: user.yearDOB,
hobbies: user.hobbies,
last_name: user.last_name,
gender: user.gender,
address: user.Address
}).then((profile: any) => {
return new Response('Profile has been saved successfully', true);
})
.catch((err: any) => {
return new Response('Unable to save profile at this time, please try again later.', false);
}) as Promise<Response>
)
}
あなたはそれが、これは、更新が成功したかではない場合、私はに基づいてこれらの値を移入string
とboolean
が含まれている私のカスタムクラスであるタイプReponse
のPromise
を返す見ることができるように。次に、コンポーネント内のboolean
の値を参照して、次に何をするかを決定します。
catch
セクション内で指定されているものを返さない失敗し、またそれが
console.log
任意のカスタムテキスト私は指定ないです
ではなく、それだけで、次の書き込み :
私はfirebase
ドキュメントを検索しましたが、無駄で、誰もがこの前に経験していますか?あなたはそれを解決することができましたか?
しかし、あなたはこれらの例外をキャッチできない場合、なぜ.catch
を持っているのを心配しますか?
私は彼らが読んだ後のケースかもしれないと思ったが、私は何かを見逃してしまったので質問をするだろうと思った。 –