次のような関数からプロミスを返しています。
resultPromise = dgps.utils.save(opportunity, '/api/Opportunity/Save', opportunity.dirtyFlag).then(function () {
self.checklist.saveChecklist(opportunity).then(function () {
self.competitor.save(opportunity.selectedCompetitor()).then(function ... etc.
return resultPromise;
上記の関数が save と呼ばれるとしましょう。
呼び出し関数では、チェーン全体が完了するのを待ってから何かをしたいと考えています。私のコードは次のようになります。
var savePromise = self.save();
savePromise.then(function() {
console.log('aftersave');
});
その結果、promise のチェーンがまだ実行されている間に「aftersave」がコンソールに送信されます。
チェーン全体が完了した後に何かを行うにはどうすればよいですか?