promiseを使う際にエラーメッセージを任意の内容にする方法

下記のようにpromiseを使っていくつかの同期処理をしています。

エラーが発生した際に細かく原因を把握できるように、自分で設定したエラーメッセージを表示させたいです。

処理1内のエラーは「他アプリのレコード取得に失敗しました」

処理2内のエラーは「レコード更新に失敗しました」

処理3内のエラーは「レコードが存在しませんでした」

のようなメッセージを自作するイメージです。

catchが1つだけだと細かい場合分けをどうして良いのかわからなかったのですが、どのように書くのが適切でしょうか?

 

kintone.events.on('app.record.create.submit.success', function(event) {


    return kintone.api(kintone.api.url("/k/v1/records", true), "GET", {app: 1, id: 1} ).then( function(resp1) {


        // 処理1
        return event;


    }).then(function(resp2) {


        // 処理2
        return event;


    }).then(function(resp3) {


        // 処理3
        return event;


    }).catch(function(error) {
      event.error = error.message;
        return event;


    });
});

 

こんにちは。

developer networkでちょうど良いサンプルがなかったのですが、下記は参考になるでしょうか。

https://jsprimer.net/basic/async/#promise-reject

失敗の時に reject() を使って各々エラーハンドリングします。

エラーはcatchで取得できるので、そこでアラートを出すなどすれば良いかと思います。

エラーの時に、throwすることもありますが、ここはケースバイケースですね。

Kazuhiro Yoshida 様

 

ご提示いただいたURLの内容を理解するのに時間がかかってしまいお礼が遅くなってしまったのですが、

rejectでエラーハンドリングするというので解決できそうでした。

おかげさまでエラーの度に胃を痛めながら調査しなくてすみそうです。

ご回答ありがとうございました!