Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

delay

3.0.0 • Public • Published

delay Build Status

Delay a promise a specified amount of time

Install

$ npm install delay

Usage

const delay = require('delay');
 
(async () => {
    bar();
 
    await delay(100);
 
    // Executed 100 milliseconds later
    baz();
})();

Advanced usage

const delay = require('delay');
 
delay(100, 'a result')
    .then(result => {
        // Executed after 100 milliseconds
        // result === 'a result';
    });
 
// There's also `delay.reject()` which optionally accepts a value and rejects it `ms` later
delay.reject(100, 'foo'))
    .then(x => blah()) // Never executed
    .catch(err => {
        // Executed 100 milliseconds later
        // err === 'foo'
    });
 
// You can settle the delay by calling `.clear()`
(async () => {
    const delayedPromise = delay(1000, 'done!');
 
    setTimeout(() => {
        delayedPromise.clear();
    }, 500);
 
    const result = await delayedPromise;
    // 500 milliseconds later
    // result === 'done!'
})();

API

delay(ms, [value])

Create a promise which resolves after the specified ms. Optionally pass a value to resolve.

delay.reject(ms, [value])

Create a promise which rejects after the specified ms. Optionally pass a value to reject.

ms

Type: number

Milliseconds to delay the promise.

value

Type: any

Value to resolve or reject in the returned promise.

delay#clear()

Clears the delay and settles the promise.

Related

  • delay-cli - CLI for this module
  • p-cancelable - Create a promise that can be canceled
  • p-min-delay - Delay a promise a minimum amount of time
  • p-immediate - Returns a promise resolved in the next event loop - think setImmediate()
  • p-timeout - Timeout a promise after a specified amount of time
  • More…

License

MIT © Sindre Sorhus

install

npm i delay

Downloadsweekly downloads

66,948

version

3.0.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
  • avatar