Vue.$http = { get(path, params) { return this.request('get', path, params) }, post(path, params) { return this.request('post', path, params) }, put(path, params) { return this.request('put', path, params) }, delete(path, params) { return this.request('delete', path, params) }, request(method, path, data) { let params = { r: path } if (method == 'get') { params = Object.assign(params, data ? data : {}) } console.log('method', method, params, method != 'get' ? (data ? data : {}) : {}) return new Promise((resolve, reject) => { request({ method: method, params: params, data: method != 'get' ? (data ? data : {}) : {} }).then(res => { if (res.status === 200) { if (res.data.code === 0) { resolve(res.data.data) } else { reject({ type: 'res', val: res.data.msg }) } } else { reject({ type: 'res', val: res }) } }).catch(e => { reject({ type: 'err', val: e }) }); }) } }