nodeのPromiseの使い方考察

node.jsを使っていると、特にデータベースなんかを使っていると、callbackでのネストの深さに辟易してきます。

そんなときに活躍してくれるのがPromise。

検索してみると、記事は一杯出てるんですが、も一つ使い方が??だったんで、あれこれと試してみました。

基本なソースのご紹介

こんなシーンを想定しています。

1)システムファイルを読み込む
2)セッションを開始する
3)更新する
4)エラー時の処理をする
5)セッションを開放する
6)後始末をする

コレを想定したソース(Express使っています)
※以下、基本ソースとします。

さて、やってみましょう!

基本形を実行すると。。。

$ node bin/www
step1
step2
step3
step4
step5
step6

問題なく全部通ってくれます。

Step2でrejectしてみると

step1
step2
catch1:step2 error
step5
step6

エラーメッセージが飛んでくれました!

Step2とStep3でResolveを取ってみると

step1
step2

おおお、step3以降へは進まないんだ。。。

Step4にRejectを入れてみると

step1
step2
step3
step4
catch1:ReferenceError: reject is not defined
step5
step6

おっと〜、イベントは飛ぶけど、メッセージがいかない。。

ふむ〜、Promiseでの逐次処理って便利なんですねぇ。。。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA