import axios, { AxiosRequestConfig } from 'axios' export interface IReqData { url: string method?: string data?: any } export class NetClient { httpGet(reqData: IReqData | string): Promise { let opt: AxiosRequestConfig = { method: 'get' } if (typeof reqData == 'string') { opt.url = reqData } else { Object.assign(opt, reqData) } return this.request(opt) } httpPost(data: IReqData): Promise { let reqData: AxiosRequestConfig = { method: 'post', } Object.assign(reqData, data) return this.request(reqData) } request(data: AxiosRequestConfig): Promise { let defaultCfg: AxiosRequestConfig = { method: 'get', } Object.assign(defaultCfg, data) return axios(defaultCfg).then(res => res.data) } }