makeCancelable
Wraps a native Promise and allows it to be cancelled.
API
function makeCancelable<GenericPromiseValue = unknown>(promise: Promise<GenericPromiseValue>): MakeCancelablePromise<GenericPromiseValue>;
Usage
import { wait } from "@jtmdias/js-utilities";
// Create a Promise that resolves after 1 second
const somePromise = wait(1000);
// Make it cancelable
const cancelable = makeCancelable(somePromise);
// Execute the wrapped promise
cancelable.promise
.then(console.log)
.catch(error => {
if (error.name === 'AbortError') {
console.log('Promise was cancelled');
} else {
console.error('Other error:', error);
}
});
// Cancel it when needed
cancelable.cancel();