Create a deferred promise
Go to file
Richie Bendall 857bca9cf5
Move to GitHub Actions (#6)
2021-01-01 17:41:38 +07:00
.github Move to GitHub Actions (#6) 2021-01-01 17:41:38 +07:00
.editorconfig Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00
.gitattributes Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00
.gitignore Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00
.npmrc Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00
index.d.ts Require Node.js 8 2019-06-07 15:08:42 +07:00
index.js Require Node.js 8 2019-06-07 15:08:42 +07:00
index.test-d.ts Refactor TypeScript definition to CommonJS compatible export (#4) 2019-04-03 12:19:13 +07:00
license Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00
package.json 3.0.0 2019-06-07 15:10:46 +07:00
readme.md Move to GitHub Actions (#6) 2021-01-01 17:41:38 +07:00
test.js Require Node.js 6, add TypeScript definition (#2) 2019-03-17 19:21:07 +07:00

readme.md

p-defer

Create a deferred promise

Don't use this unless you know what you're doing. Prefer the Promise constructor.

Install

$ npm install p-defer

Usage

const pDefer = require('p-defer');

function delay(ms) {
	const deferred = pDefer();
	setTimeout(deferred.resolve, ms, '🦄');
	return deferred.promise;
}

(async () => {
	console.log(await delay(100));
	//=> '🦄'
})();

The above is just an example. Use delay if you need to delay a promise.

API

pDefer()

Returns an object with a promise property and functions to resolve() and reject().

  • p-lazy - Create a lazy promise that defers execution until .then() or .catch() is called
  • More…

Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.