/openpromise

An open promise is a promise that can be resolved or rejected outside of its closure

Primary LanguageJavaScript

openpromise

JavaScript promises require that you call reject or resolve inside the closure of the created promise.

For example:


    const promise = new Promise((resolve, reject) => {
        // We have to call resolve or reject here, inside the closure
    });

    // We can't resolve the promise here, outside of the closure

This package lets you create an open promise. This is a normal JavaScript Promise, but with its resolve and reject callbacks set as attributes on the promise itself.

This lets you resolve or reject the promise outside of its closure.

For example:

    import { getOpenPromise } from 'openpromise';

    const promise = getOpenPromise();
    const func = setTimeout(() => promise.resolve(), 1000);
    return promise;