UNPKG

alloy-request

Version:

alloy-request 基于`axios`和`ahooks的useRequest`封装的 react 请求库

76 lines (75 loc) 2.11 kB
'use strict' Object.defineProperties(exports, { __esModule: { value: !0 }, [Symbol.toStringTag]: { value: 'Module' } }) const T = require('axios'), x = require('ahooks'), S = { headers: { 'Content-Type': 'application/json' }, timeout: 3e4 }, o = T.create(S) function m(r, n, t) { o.interceptors.request.use( e => (r ? r(e) : e), e => Promise.reject(e) ), o.interceptors.response.use( e => (e.status === 200 ? (n ? n(e) : e.data) : Promise.reject(e)), e => (t ? t(e) : Promise.reject(e)) ) } function u(r, n, t) { try { const { headers: e = {}, ...c } = t || {} return o({ ...c, method: 'POST', url: r, data: n, headers: e }) } catch (e) { return console.log(e), Promise.reject(e) } } function i(r, n, t) { try { const { headers: e = {}, ...c } = t || {} return o({ ...c, method: 'GET', url: r, data: n, headers: e }) } catch (e) { return Promise.reject(e) } } function a(r, n, t) { try { const { headers: e = {}, ...c } = t || {} return o({ ...c, method: 'PUT', url: r, data: n, headers: e }) } catch (e) { return Promise.reject(e) } } function f(r, n, t) { try { const { headers: e = {}, ...c } = t || {} return o({ ...c, method: 'PATCH', url: r, data: n, headers: e }) } catch (e) { return Promise.reject(e) } } function d(r, n, t) { try { const { headers: e = {}, ...c } = t || {} return o({ ...c, method: 'DELETE', url: r, data: n, headers: e }) } catch (e) { return Promise.reject(e) } } const s = { get: i, post: u, put: a, patch: f, del: d } function g(r, n, t) { return x.useRequest(async e => { var l const P = (n ?? (() => ({})))(e), { method: j = 'post', payload: p, ...y } = P, h = (l = s[j]) == null ? void 0 : l.call(s, r, p, y) return t != null && t.formatResult ? h.then(t.formatResult) : h }, t) } const v = { initInstance: m, post: u, get: i, put: a, patch: f, del: d, useAxios: g } exports.default = v exports.del = d exports.get = i exports.initInstance = m exports.patch = f exports.post = u exports.put = a exports.useAxios = g