我的應用程序有一個$ rootScope變量,當有Ajax 請求正在進行時,它被設置爲一個非零值。我設置了一個轉輪來顯示這個變量的值是否比零更多。僞代碼:如何讓一個變量的值等於另一個值,但延遲設置?
$rootScope.pendingRequests > 0 then show the spinning wheel
結果是,對於非常快速的請求,輪子快速閃爍。我想通過僅在請求已經進行超過500毫秒的情況下使輪子出現來避免這種閃光。我的想法是有一個名爲$ rootScope.pendingRequestsDebounced另一個變量,有這種遵循$值這樣rootScope.pendingRequests:
如果$ rootScope.pendingRequests先後爲超過0值在* 至少500毫秒 * S然後設置:$ rootScope.pendingRequestsDebounced = $ rootScope.pendingRequests
如果$ rootScope.pendingRequests等於0,則立即着手:$ rootScope.pendingRequestsDebounced = $ rootScope.pendingRequests(無延遲)。
您的ajax呼叫是同步呼叫還是異步呼叫? –