2016-11-17 12 views
1

startcontinueおよびfinishが約束であるこのコードを考えてみましょう。入れ子になった約束を書く方法

export const do =() => { 
    return new Promise((resolve, reject) => { 
     start() 
      .then(() => continue()) 
      .then(() => finish()) 
      .then(() => resolve()) 
      .catch((reason) => reject(reason)) 
    }); 
}; 

ネストされた約束を書くにはどうすればいいですか?

+3

オム、はい、それは動作します。しかし、単純に 'do =()=> start()。then(continue).then(finish)'もうまくいくでしょう。それはすでに約束であり、 '新しい約束 'は必要ありません。 – deceze

+2

これを個人的に重複して分類することはできませんが、それは関連しています:[明示的な約束の建設の反パターンは何ですか?それを避けるにはどうすればいいですか?](http://stackoverflow.com/questions/23803743/what-is-the-明示的に約束している建設と反反論と私は避けている) –

答えて

1

だけで、それをラップする必要がチェーン全体を返さない:

export const _do =() => start() 
      .then(continue) 
      .then(finish) 
; 
関連する問題