vue框架搭建之axios使用教程


Posted in Javascript onJuly 11, 2018

前后端数据交互作为项目最基础需求(静态的除外),同时也是项目中最重要的需求。

本文重点介绍axios如何配合vue搭建项目框架,而axios的详细使用介绍请移步 使用说明

1、安装

cnpm install axios --save-dev

2、引入

main.js 文件引入:

import Vue from 'vue'//引入vue
import axios from 'axios'//引入axios
Vue.prototype.$axios = axios;//把axios挂载到vue上

3、使用

 getStore(){
      let that = this
      that.$axios({
        method: "post",//指定请求方式
        url: "/business-app/getCityShopList.cgi",//请求接口(相对接口,后面会介绍到)
        data: {
          cityId: cityId,
          data:{},
          isDebug:"1",
          longitude: "",
          latitude: ""
        }
      })
      .then(function(res){
        //接口成功返回结果执行
      })
      .catch(function(err){





//请求失败或者接口返回失败或者.then()中的代码发生错误时执行
      })
    }

4、跨域与代理

在vue本地开发时请求总是发生跨域

解决方案:配置代理

config 下的index.js 文件

proxyTable: {
    '/business-app/*': {
      target: 'http://****:8080',//被代理的接口
      
      changeOrigin: true,
      secure:true // 如果是https接口,需要配置这个参数
    }
  },

当URL以 '/business-app/'层级开端时,把 'http://****:8080' 代理成本地IP

5、 baseURL与代理

两者用途不一样,

baseUrl会附加到你绑定的axios实例(如果是全局的,那就是所有实例)上,即如果get/post的url参数是相对路径(如) /api/c/xx,那就会执行 baseUrl + '/api/c/xx',如果未指定baseUrl,那就走浏览器地址栏里的base + baseUrl。

webpack里的proxyTable是测试环境为了避免浏览器下的跨域访问,而以nodejs代理成同前端页面(即浏览器地址栏)同域的一种处理。指定proxyTable后, axios就不需要指定baseUrl了。proxyTable会把base + '/api/c/xx'代理到【base baseUrl + '/api/c/xx'】的接口地址上。

当然工程发布时,后端和前端也需要发布到同一个域下。

6、axios与vue-axios

先看两者的用法

Vue.prototype.$axios = axios
和
import Vueaxios from ‘vue-axios'
Vue.use(VueAxios,axios)

解释:使用vue-axios更多是为了符合规范,并且方便协作

7、其他待补充

对于跨域的处理,除了采用代理外,也可用JSONP或者Qs(axios官方推荐)方案,待详细研究后再来补充

总结

以上所述是小编给大家介绍的vue框架搭建之axios使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript[js]获取url参数的代码
Oct 17 Javascript
关于jquery.validate1.9.0前台验证的使用介绍
Apr 26 Javascript
关于jquery的多个选择器的使用示例
Oct 18 Javascript
Jjcarousellite 实现图片列表滚动的简单实例
Nov 29 Javascript
jquery实现的图片点击滚动效果
Apr 29 Javascript
Node.js开源应用框架HapiJS介绍
Jan 14 Javascript
AngularJS ng-bind-template 指令详解
Jul 30 Javascript
jQuery基本过滤选择器用法示例
Sep 09 Javascript
js仿京东轮播效果 选项卡套选项卡使用
Jan 12 Javascript
vue.js的提示组件
Mar 02 Javascript
React Router V4使用指南(精讲)
Sep 17 Javascript
JS桶排序的简单理解与实现方法示例
Nov 25 Javascript
vue中动态设置meta标签和title标签的方法
Jul 11 #Javascript
Vue项目添加动态浏览器头部title的方法
Jul 11 #Javascript
node.js到底要不要加分号浅析
Jul 11 #Javascript
微信小程序实现红包功能(后端PHP实现逻辑)
Jul 11 #Javascript
Vue如何实现响应式系统
Jul 11 #Javascript
vue.js内置组件之keep-alive组件使用
Jul 10 #Javascript
小程序图片剪裁加旋转的示例代码
Jul 10 #Javascript
You might like
使用TinyButStrong模板引擎来做WEB开发
2007/03/16 PHP
深入解析phpCB批量转换的代码示例
2013/06/27 PHP
PHP输出两个数字中间有多少个回文数的方法
2015/03/23 PHP
PHP加密解密类实例分析
2015/04/20 PHP
php获取linux命令结果的实例
2017/03/13 PHP
可以将word转成html的js代码
2010/04/11 Javascript
JS图片预加载 JS实现图片预加载应用
2012/12/03 Javascript
javascript中简单的进制转换代码实例
2013/10/26 Javascript
button没写type=button会导致点击时提交
2014/03/06 Javascript
JavaScript保留两位小数的2个自定义函数
2014/05/05 Javascript
原生javascript获取元素样式
2014/12/31 Javascript
Javascript显示和隐藏ul列表的方法
2015/07/15 Javascript
JavaScript中对DOM节点的访问、创建、修改、删除
2015/11/16 Javascript
jquery实现简单的表单验证
2015/11/17 Javascript
bootstrap导航条实现代码
2016/12/28 Javascript
node vue项目开发之前后端分离实战记录
2017/12/13 Javascript
对node.js中render和send的用法详解
2018/05/14 Javascript
vue element-ui中table合计指定列求和实例
2020/11/02 Javascript
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
浅析Python的Django框架中的Memcached
2015/07/23 Python
numpy的文件存储.npy .npz 文件详解
2018/07/09 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
CSS3 实现童年的纸飞机
2019/05/05 HTML / CSS
详解HTML5 data-* 自定义属性
2018/01/24 HTML / CSS
美国最大的宠物用品零售商:PetSmart
2016/11/14 全球购物
Farfetch阿联酋:奢侈品牌时尚购物平台
2019/07/26 全球购物
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
Java如何获得ResultSet的总行数
2016/09/03 面试题
如何编写优秀的食品项目创业计划书
2014/01/23 职场文书
学习十八届三中全会精神实施方案
2014/02/17 职场文书
法人代表授权委托书范文
2014/09/10 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
应用最多的公文《通知》如何写?
2019/04/02 职场文书
导游词之云南省玉龙雪山
2019/12/19 职场文书
python3实现常见的排序算法(示例代码)
2021/07/04 Python
Nginx反向代理学习实例教程
2021/10/24 Servers