JSFiddle - React, Tailwind, and code Playground
by Csaba Hellinger
JavaScript
console.clear();
function promiseTimeout(promise, timeout) {
return new Promise((resolve, reject) => {
const timer = setTimeout(() => {
reject('Promise timeout');
}, timeout);
promise
.then(resolve)
.catch(reject)
.finally(() => clearTimeout(timer));
});
}
function test() {
return new Promise((resolve, reject) => {
setTimeout(() => resolve(1), 1500);
//setTimeout(() => reject(2), 1000);
});
}
const p = promiseTimeout(test(), 1000);
p.then(res => console.log(res)).catch(err => console.error(err));