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选择符快速提取web表单数据示例
Mar 27 Javascript
javascript动态控制服务器控件实例
Sep 05 Javascript
JQuery解析XML的方法小结
Apr 02 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
May 07 Javascript
BootStrap实现带有增删改查功能的表格(DEMO详解)
Oct 26 Javascript
javascript 中设置window.location.href跳转无效问题解决办法
Feb 09 Javascript
实现div内部滚动条滚动到底部和顶部的代码
Nov 15 Javascript
JavaScript面向对象继承原理与实现方法分析
Aug 09 Javascript
详解如何用typescript开发koa2的二三事
Nov 13 Javascript
JavaScript刷新页面的几种方法总结
Mar 28 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
Apr 02 Javascript
浅析vue-router实现原理及两种模式
Feb 11 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 MsSql server时遇到的中文编码问题
2009/06/11 PHP
php 文件上传代码(限制jpg文件)
2010/01/05 PHP
在项目中寻找代码的坏命名
2012/07/14 PHP
php 启动报错如何解决
2014/01/17 PHP
PHP图片库imagemagick安装方法
2014/09/23 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
PHP连接MySQL数据库操作代码实例解析
2020/07/11 PHP
php自动加载代码实例详解
2021/02/26 PHP
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
微信小程序实现表单校验功能
2020/03/30 Javascript
使用Fullpage插件快速开发整屏翻页的页面
2017/09/13 Javascript
简单的vuex 的使用案例笔记
2018/04/13 Javascript
vue的传参方式汇总和router使用技巧
2018/05/22 Javascript
JS中min函数实例讲解
2019/02/18 Javascript
Vue中实现权限控制的方法示例
2019/06/07 Javascript
vue服务端渲染操作简单入门实例分析
2019/08/28 Javascript
JS中async/await实现异步调用的方法
2019/08/28 Javascript
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
Node.js API详解之 console模块用法详解
2020/05/12 Javascript
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
2020/06/11 Javascript
Python二分法搜索算法实例分析
2015/05/11 Python
自己编程中遇到的Python错误和解决方法汇总整理
2015/06/03 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
2019/07/14 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
pandas DataFrame 数据选取,修改,切片的实现
2020/04/24 Python
使用Keras预训练模型ResNet50进行图像分类方式
2020/05/23 Python
Mytheresa美国官网:德国知名的女性奢侈品电商
2017/05/27 全球购物
优秀班集体获奖感言
2014/02/03 职场文书
旅游活动总结
2014/08/27 职场文书
医院护士工作检讨书
2014/10/26 职场文书
校长师德表现自我评价
2015/03/04 职场文书
小学语文国培研修日志
2015/11/13 职场文书
解决Jenkins集成SonarQube遇到的报错问题
2021/07/15 Java/Android
Java多线程并发FutureTask使用详解
2022/06/28 Java/Android