@leonzalion/p-wait-for v4.2.1
p-wait-for
Wait for a condition to be true
Can be useful for polling.
Install
npm install p-wait-forUsage
import pWaitFor from 'p-wait-for';
import {pathExists} from 'path-exists';
await pWaitFor(() => pathExists('unicorn.png'));
console.log('Yay! The file now exists.');API
pWaitFor(condition, options?)
Returns a Promise that resolves when condition returns true. Rejects if condition throws or returns a Promise that rejects.
condition
Type: Function
Expected to return Promise<boolean> | boolean.
options
Type: object
interval
Type: number\
Default: 20
Number of milliseconds to wait after condition resolves to false before calling it again.
timeout
Type: number\
Default: Infinity
Number of milliseconds to wait before automatically rejecting with a TimeoutError.
before
Type: boolean\
Default: true
Whether to run the check immediately rather than starting by waiting interval milliseconds.
Useful for when the check, if run immediately, would likely return false. In this scenario, set before to false.
resolveWith(value)
Resolve the main promise with a custom value.
import pWaitFor from 'p-wait-for';
import pathExists from 'path-exists';
const path = await pWaitFor(async () => {
const path = getPath();
return await pathExists(path) && pWaitFor.resolveWith(path);
});
console.log(path);TimeoutError
Exposed for instance checking.