との約束の一例です。 「死のピラミッド」を避けようとしているのならば、「スティーブン・カスパル」の示唆どおりに約束することができます。
しかし、同じことを行うための他の一般的な方法があります。あなたが埋め込まれた3-4のコールバックを持っていない限り、これは理にかなっていない可能性があります場合は
async.waterfall([
function(callback) {
gm_scrape.search_link(request, function(list){
callback(null, list);
});
},
function(callback) {
gm_scrape.fetch_profiles(list, function(profiles, request){
callback(null, profiles);
});
}
], function(err, result) {
console.log("the profile is ", result);
});
:これに取り組むために、他の一般的な方法の1つは、caolan/async's滝の方法を使用しています。このソリューションは、コールバックが厄介になる最後の結果に依存する長い一連のタスクを編成する方法が必要な約束なしに、既存のコードベースに合わせて設計されています。管理が難しい。これはまた、あなたのモジュールで約束が利用できず、ラップタイムを費やしたくない場合(これらのコールバックブレークはほとんどの約束モジュールによって提供されるヘルパーを約束するため)、より簡単な解決策になるかもしれません。
これらは順番に実行されています。最初に 'gm_scrape.search_link()'が実行され、終了するとコールバックを呼び出し、そのコールバックで 'gm_scrape.fetch_profiles()'が実行されます。正確な問題は、あなたが援助を必要としていることですか? – jfriend00