vue 组件的封装之基于axios的ajax请求方法


Posted in Javascript onAugust 11, 2018

如下所示:

import Vue from 'vue'
 
let service = {
 url: 'http://host.xxxxx.com/xxx.php'
}
 
service.ajaxReuqest = (url, options, type, fileFlag) => {
 for (const i in options) {
 if (!options[i] && options[i] !== 0 && (options[i].length && options[i].length > 0)) {
  delete options[i]
 }
 }
 let promise = new Promise((resolve, reject) => {
 if (fileFlag) {
  Vue.axios.post(url, options, {
  headers: {
   'Content-Type': 'multipart/form-data'
  }
  }).then((res) => {
  resolve(res)
  })
 } else if (type === 'GET') {
  Vue.axios.get(url, { params: options }).then((res) => {
  resolve(res.data.resultObj)
  }).then((err) => {
  reject(err)
  })
 } else {
  Vue.axios.post(url, options).then((res) => {
  resolve(res)
  }).then((err) => {
  reject(err)
  })
 }
 })
 return promise
}

支持POST GET请求以及图片上传,基于axios,适用于vue,

以异步获取省份列表作为例子:

// 获取省份信息
service.getProvinceList = (options) => {
 return service.ajaxRequest(service.url + '/basic/getProvinceList', options, 'POST')
}
getProvinceList () {
 service.getProvinceList({}).then((res) => {
  this.provinceList = res.data.resultObj.data
 })
}

以上这篇vue 组件的封装之基于axios的ajax请求方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个简单的jQuery插件制作 学习过程及实例
Apr 25 Javascript
extJS中常用的4种Ajax异步提交方式
Mar 07 Javascript
javascript中 try catch用法
Aug 16 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
Jan 18 Javascript
微信小程序 获取javascript 里的数据
Aug 17 Javascript
js中apply与call简单用法详解
Nov 06 Javascript
Vue组件通信的四种方式汇总
Feb 08 Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 Javascript
浅谈在Vue.js中如何实现时间转换指令
Jan 06 Javascript
JavaScript中concat复制数组方法浅析
Jan 20 Javascript
详解vue 图片上传功能
Apr 30 Javascript
关于IDEA中的.VUE文件报错 Export declarations are not supported by current JavaScript version
Oct 17 Javascript
解决Vue axios post请求,后台获取不到数据的问题方法
Aug 11 #Javascript
vuejs前后端数据交互之从后端请求数据的实例
Aug 11 #Javascript
解决vue中post方式提交数据后台无法接收的问题
Aug 11 #Javascript
vue.js配合$.post从后台获取数据简单demo分享
Aug 11 #Javascript
jQuery的Ajax接收java返回数据方法
Aug 11 #jQuery
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
Aug 10 #Javascript
解决bootstrap模态框数据缓存的问题方法
Aug 10 #Javascript
You might like
php Mysql日期和时间函数集合
2007/11/16 PHP
php生成略缩图代码
2012/07/16 PHP
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
php生成不重复随机数、数组的4种方法分享
2015/03/30 PHP
Javascript中的数学函数
2007/04/04 Javascript
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
JavaScript中的apply()方法和call()方法使用介绍
2012/07/25 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
jQuery解决input超多的表单提交
2015/08/10 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
jQuery点击其他地方时菜单消失的实现方法
2016/04/22 Javascript
jquery基本选择器匹配多个元素的实现方法
2016/09/05 Javascript
JS中对数组元素进行增删改移的方法总结
2016/12/15 Javascript
JavaScript实现星级评分
2017/01/12 Javascript
jquery实现左右滑动式轮播图
2017/03/02 Javascript
vue动态子组件的两种实现方式
2019/09/01 Javascript
微信小程序获取地理位置及经纬度授权代码实例
2019/09/18 Javascript
JavaScript设计模型Iterator实例解析
2020/01/22 Javascript
原生js+css实现tab切换功能
2020/09/17 Javascript
[00:59]DOTA2背景故事第二期之四大基本法则
2020/07/07 DOTA
Python实现App自动签到领取积分功能
2018/09/29 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
python xlwt如何设置单元格的自定义背景颜色
2019/09/03 Python
python实现图片上添加图片
2019/11/26 Python
Python定义函数时参数有默认值问题解决
2019/12/19 Python
python super用法及原理详解
2020/01/20 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
日本土著品牌,综合型购物网站:Cecile
2016/08/23 全球购物
大学新生欢迎词
2014/01/10 职场文书
《湘夫人》教学反思
2014/02/21 职场文书
《一个小村庄的故事》教学反思
2014/04/13 职场文书
刑事起诉书范文
2015/05/19 职场文书
家长反馈意见及建议
2015/06/03 职场文书
MySQL中VARCHAR与CHAR格式数据的区别
2021/05/26 MySQL