私はこれらのコードを$ http getを使ってwebserviceを呼び出すコントローラーに持っています。JavaScript - ループを遅くする
UPDATEコード:ここでは、次のコードで$ HTTP GETが非同期メソッドであるため、すぐにboothDesignatedCoordsは不定となります後
var boolGetBoothCoords = false;
BoothDesignatedCoordsService.getBoothDesignatedCoords(strListShortListedBooth[i], 3)
.then(function(response) {
var data = response.data
console.log('data', data.arrBoothDesignatedCoords)
boothDesignatedCoords = data.arrBoothDesignatedCoords;
boolGetBoothCoords = true;
})
console.log("boothDesignatedCoords ", boothDesignatedCoords); // undefined
// And a lot of other codes
しかし、プログラムはコンソールログとコードを呼び出します。私はそれを望んでいない。私は、Webサービスの消費が完了した後にのみ、プログラムがコンソールログとコードを呼び出すようにします。それはまだコンソールログを起動する理由しかし、私は知らないが、Webサービスの消費量は、この方法を使用するにもかかわらず、まだ完了していない
go();
function go() {
console.log("hello");
if (boolGetBoothCoords == false) {
setTimeout(go, 1000);
}
else
{
}
}
go()
console.log("boothDesignatedCoords ", boothDesignatedCoords); // undefined
// OTHER CODES that uses variable boothDesignatedCoords will be undefined as well
:how to slow down a javascript loop:だから私はこの答えを使用して、次を行いました。誰か助けてくれますか?ありがとう。実際にあなたが本当にgo
関数を呼び出す違いはありませんので、
'fnProceedOtherTask1()'コールの隣で、最後の 'then'コールバックに' console.log'を含めないのはなぜですか? – andrusieczko
混乱して申し訳ありません。私は自分の質問を更新しました – Antoni
'setTimeout'を使って待っているよりも最後のコールバックでそれを印刷する方がいいです...サーバレスポンスが1秒以上かかるとどうなりますか?それはまだ定義されていません – andrusieczko