我正在處理我的第一個AngularJS項目,並且正在處理一個超時,如果用戶沒有點擊任何內容,它會在幾分鐘後將用戶重定向到首頁。每次頁面加載都會調用超時以重新啓動超時。
但我的問題是,多次調用restart()。一次爲每個頁面/視圖加載。我使用ngRoute。
例如,如果點擊了三個頁面,timeout()現在被調用了三次,當$ timeout達到時間時,restart()被調用三次。
myapp.controller(..., [...], function(...) {
function restart() {
$location.path("/slide/1");
}
function timeout() {
var timeoutHandle = $timeout(function() {
$timeout.cancel(timeoutHandle);
restart();
}, timeoutTime);
}
timeout();
}
timeoutHandle() - 刪除超時,因爲我知道 – KoIIIeY