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 相关文章推荐
jQuery中on()方法用法实例
Jan 19 Javascript
javascript中返回顶部按钮的实现
May 05 Javascript
javascript文件加载管理简单实现方法
Jul 25 Javascript
如何实现JavaScript动态加载CSS和JS文件
Dec 28 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
Feb 17 Javascript
jQuery深拷贝Json对象简单示例
Jul 06 Javascript
Vue.js一个文件对应一个组件实践
Oct 27 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
Dec 08 Javascript
jQuery 实现双击编辑表格功能
Jun 19 jQuery
浅析vue中的provide / inject 有什么用处
Nov 10 Javascript
vue组件开发之slider组件使用详解
Aug 21 Javascript
JS代码实现页面切换效果
Jan 10 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
PHP文件注释标记及规范小结
2012/04/01 PHP
PHP基础知识回顾
2012/08/16 PHP
PHPStorm+XDebug进行调试图文教程
2016/06/13 PHP
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
PHP加MySQL消息队列深入理解
2021/02/27 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
对xmlHttp对象方法和属性的理解
2011/01/17 Javascript
jQuery大于号(>)选择器的作用解释
2015/01/13 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
jQuery DOM节点的遍历方法小结
2017/08/15 jQuery
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
2018/03/13 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
详解小程序中h5页面onShow实现及跨页面通信方案
2019/05/30 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
bootstrap实现tab选项卡切换
2020/08/09 Javascript
Python下的常用下载安装工具pip的安装方法
2015/11/13 Python
判断网页编码的方法python版
2016/08/12 Python
总结python中pass的作用
2019/02/27 Python
如何使用Python 打印各种三角形
2019/06/28 Python
python实现高斯(Gauss)迭代法的例子
2019/11/20 Python
关于numpy中eye和identity的区别详解
2019/11/29 Python
Python 一行代码能实现丧心病狂的功能
2020/01/18 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
彪马英国官网:PUMA英国
2019/02/11 全球购物
入党自荐书范文
2014/03/09 职场文书
毕业晚会主持词
2014/03/24 职场文书
物流专业求职信
2014/06/30 职场文书
2014年挂职干部工作总结
2014/12/06 职场文书
优秀团员自我评价
2015/03/10 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
预备党员党支部意见
2015/06/02 职场文书
评奖评优个人先进事迹材料
2015/11/04 职场文书
为什么你写的height:100%不起作用
2021/05/10 HTML / CSS