Improve this Doc View Source $timeout

  1. service in module ng

Overview

AngularJS's wrapper for window.setTimeout. The fn function is wrapped into a try/catch block and delegates any exceptions to $exceptionHandler service.

The return value of calling $timeout is a promise, which will be resolved when the delay has passed and the timeout function, if provided, is executed.

To cancel a timeout request, call $timeout.cancel(promise).

In tests you can use $timeout.flush() to synchronously flush the queue of deferred functions.

If you only want a promise that will be resolved after some specified delay then you can call $timeout without the fn function.

Usage

$timeout([fn], [delay], [invokeApply], [Pass]);

Arguments

Param Type Details
fn
(optional)
function()=

A function, whose execution should be delayed.

delay
(optional)
number

Delay in milliseconds.

(default: 0)

invokeApply
(optional)
boolean

If set to false skips model dirty checking, otherwise will invoke fn within the $apply block.

(default: true)

Pass
(optional)
*

additional parameters to the executed function.

Returns

Promise

Promise that will be resolved when the timeout is reached. The promise will be resolved with the return value of the fn function.

Methods

  • cancel([promise]);

    Cancels a task associated with the promise. As a result of this, the promise will be resolved with a rejection.

    Parameters

    Param Type Details
    promise
    (optional)
    Promise

    Promise returned by the $timeout function.

    Returns

    boolean

    Returns true if the task hasn't executed yet and was successfully canceled.

© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
https://code.angularjs.org/1.8.2/docs/api/ng/service/$timeout