ネストされた約定を避けるために、次のような方法を最適化するにはどうすればよいですか?それは動作しますが、私は約束を入れ子にし続けるつもりですネストされた約束を最適化する
コードは最初に認証してサービスを返します。そして、サービスを非同期に呼び出してアイテムを取得する関数にそのサービスを送ります。
new Promise(function(resolve, reject) {
auth.authenticate(resolve);
}).then(function(service) {
console.log('service', service);
new Promise(function(resolve, reject) {
lineItems.getLineItems(service, resolve, reject);
}).then(function(items) {
console.log('returned line items');
console.log(items);
}).catch(function(err){
console.log('error!', err);
});
});
:
auth.authenticate
および/またはlineItems.getLineItems
は外部にあり、かつ標準nodejs callbak /エラーバックスタイルに従っている場合、あなたは約束を返すためにこれらの機能をラップすることができますあなたが[返品]していないのでエラーが発生しやすいです(http://stackoverflow.com/questions/37081508/resolving-an-array-of-promises-from-within-a-parent-promise/37084467#37084467)二番目の約束。 – jib