加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > C语言 > 正文

axios使用表单格式提交内容简单包装

发布时间:2020-12-15 01:16:34 所属栏目:C语言 来源:网络整理
导读:TypeScript import axios from "axios"import qs from "qs" interface $getData { api: string data: any method: string modal: string beforeRes(): void success?(res: any): void fail?(err: any): void complete(): void } interface Promise { finally

TypeScript

import axios from "axios"
import qs from "qs"

interface $getData {
api: string
data: any
method: string
modal: string
beforeRes(): void
success?(res: any): void
fail?(err: any): void
complete(): void

}

interface Promise {
finally(): void
}
// 自定义ajax方法
function getData({
api = '',data = null,modal = "form",method = "get",success = false,fail = false,complete = false,beforeRes = false
}: $getData
) {
let fetched: any
beforeRes && (beforeRes())
// 如果是get
if (method == 'get') {
fetched = axios({
method: method,url: api,params: {
...data
}
})
} else if (modal == 'form') {
fetched = axios({
method: method,data: qs.stringify(data)
})
} else if (modal == 'json') {
fetched = axios({
method: method,data: {
...data
}
})
} else {
return false
}
fetched.then((res: any) => {
success && (success(res))
return {result:true,res:res}
}).catch((err: any) => {
fail && (fail(err))
return {result:false,err:err}
}).finally(() => {
complete && (complete())
})

}
export {
getData
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读