Skip to content
Create a lazy promise that defers execution until it's awaited or when .then() or .catch() is called
JavaScript TypeScript
Branch: master
Clone or download
Latest commit e8fbda8 May 28, 2019

readme.md

p-lazy Build Status

Create a lazy promise that defers execution until it's awaited or when .then() or .catch() is called

Useful if you're doing some heavy operations and would like to only do it when the promise is actually used.

Install

$ npm install p-lazy

Usage

const PLazy = require('p-lazy');

const lazyPromise = new PLazy(resolve => {
	someHeavyOperation(resolve);
});

// `someHeavyOperation` is not yet called

(async () => {
	await doSomethingFun;
	// `someHeavyOperation` is called
	console.log(await lazyPromise);
})();

API

new PLazy(executor)

Same as the Promise constructor. PLazy is a subclass of Promise.

PLazy.from(fn)

Create a PLazy promise from a promise-returning or async function.

Related

License

MIT © Sindre Sorhus

You can’t perform that action at this time.