全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

VUE 更好的 ajax 上传处理 axios.js实现代码

vue更新到2.0之后,作者就宣告不再对vue-resource更新,而是推荐的axios,前一段时间用了一下,现在说一下它的基本用法。

首先就是引入axios,如果你使用es6,只需要安装axios模块之后

import axios from 'axios';
//安装方法
npm install axios
//或
bower install axios

当然也可以用script引入

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

axios提供了一下几种请求方式

axios.request(config)

axios.get(url[, config])

axios.delete(url[, config])

axios.head(url[, config])

axios.post(url[, data[, config]])

axios.put(url[, data[, config]])

axios.patch(url[, data[, config]])

这里的config是对一些基本信息的配置,比如请求头,baseURL,当然这里提供了一些比较方便配置项

//config
import Qs from 'qs'
{
 //请求的接口,在请求的时候,如axios.get(url,config);这里的url会覆盖掉config中的url
 url: '/user',

 // 请求方法同上
 method: 'get', // default
 // 基础url前缀
 baseURL: 'https://some-domain.com/api/',
  
    
 transformRequest: [function (data) {
  // 这里可以在发送请求之前对请求数据做处理,比如form-data格式化等,这里可以使用开头引入的Qs(这个模块在安装axios的时候就已经安装了,不需要另外安装)
  data = Qs.stringify({});
  return data;
 }],

 transformResponse: [function (data) {
  // 这里提前处理返回的数据

  return data;
 }],

 // 请求头信息
 headers: {'X-Requested-With': 'XMLHttpRequest'},

 //parameter参数
 params: {
  ID: 12345
 },

 //post参数,使用axios.post(url,{},config);如果没有额外的也必须要用一个空对象,否则会报错
 data: {
  firstName: 'Fred'
 },

 //设置超时时间
 timeout: 1000,
 //返回数据类型
 responseType: 'json', // default


}

有了配置文件,我们就可以减少很多额外的处理代码也更优美,直接使用

axios.post(url,{},config)
  .then(function(res){
    console.log(res);
  })
  .catch(function(err){
    console.log(err);
  })
//axios请求返回的也是一个promise,跟踪错误只需要在最后加一个catch就可以了。
//下面是关于同时发起多个请求时的处理

axios.all([get1(), get2()])
 .then(axios.spread(function (res1, res2) {
  // 只有两个请求都完成才会成功,否则会被catch捕获
 }));

最后还是说一下配置项,上面讲的是额外配置,如果你不想另外写也可以直接配置全局

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

//当然还可以这么配置
var instance = axios.create({
 baseURL: 'https://api.example.com'
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue  # axios  # 上传文件  # axios.js  # ajax  # 上传  # vue使用Axios做ajax请求详解  # 在Vue组件化中利用axios处理ajax请求的使用方法  # vue axios 在页面切换时中断请求方法 ajax  # vue结合axios与后端进行ajax交互的方法  # vue 组件的封装之基于axios的ajax请求方法  # vue项目使用axios发送请求让ajax请求头部携带cookie的方法  # Vue官方推荐AJAX组件axios.js使用方法详解与API  # Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)  # Vue通过axios发送ajax请求基础演示  # 如果你  # 则会  # 还可以  # 多个  # 不需要  # 才会  # 可以用  # 只需  # 要在  # 用了  # 要用  # 如果没有  # 可以直接  # 几种  # 就可  # 是说  # 只需要  # 可以使用  # 报错  # 配置文件 


相关文章: 高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  高端建站三要素:定制模板、企业官网与响应式设计优化  建站之星如何实现PC+手机+微信网站五合一建站?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  如何用花生壳三步快速搭建专属网站?  建站之星免费模板:自助建站系统与智能响应式一键生成  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何用景安虚拟主机手机版绑定域名建站?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  建站之星如何防范黑客攻击与数据泄露?  如何快速生成凡客建站的专业级图册?  图册素材网站设计制作软件,图册的导出方式有几种?  西安大型网站制作公司,西安招聘网站最好的是哪个?  如何挑选最适合建站的高性能VPS主机?  如何快速查询网址的建站时间与历史轨迹?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  小建面朝正北,A点实际方位是否存在偏差?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?  开源网站制作软件,开源网站什么意思?  ,sp开头的版面叫什么?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?  如何快速搭建二级域名独立网站?  香港网站服务器数量如何影响SEO优化效果?  网站制作报价单模板图片,小松挖机官方网站报价?  如何在建站主机中优化服务器配置?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  seo网站制作优化,网站SEO优化步骤有哪些?  专业网站建设制作报价,网页设计制作要考什么证?  相册网站制作软件,图片上的网址怎么复制?  平台云上自主建站:模板化设计与智能工具打造高效网站  浅谈Javascript中的Label语句  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何选择高效响应式自助建站源码系统?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  高端企业智能建站程序:SEO优化与响应式模板定制开发  成都网站制作报价公司,成都工业用气开户费用?  ,在苏州找工作,上哪个网站比较好?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  如何制作网站标识牌,动态网站如何制作(教程)?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  建站之星如何取消后台验证码生成? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。