bananahooks
Version:
"Collection" of custom React Hooks.
3 lines (2 loc) • 427 B
JavaScript
;var e=require("react");exports.usePromise=function(r,n){const[t,u]=e.useState({value:n,error:null,isPending:!0});e.useEffect(()=>{const e="function"==typeof r?r():r;let t=!0;return e.then(e=>t?u({value:e,error:null,isPending:!1}):null).catch(e=>t?u({value:n,error:e,isPending:!1}):null),()=>{t=!1}},[r,n]);const{value:s,error:i,isPending:l}=t;return[s,i,l]};
//# sourceMappingURL=bananahooks.cjs.production.js.map