vue的axios使用

摘要:
then中返回的是正常情况下的数据,而catch中返回的是错误信息。
1.安装axios

在项目目录下安装,命令:

npm install --save axios vue-axios
2.axios的配置

方法1:在入口main.js中导入axios 并将axios写入vue的原型,这样就能更简单的使用

import axios from 'axios'
import VueAxios from 'vue-axios'

Vue.use(VueAxios, axios)

方法二:如果需配置全局axios访问的路由前缀,可以配置如下内容:

1 import axios from 'axios'
2 const ajax = axios.create({
3 baseURL: 'http://127.0.0.1:8000'  // 配置请求路由前缀
4 })
5 Vue.config.productionTip = false
6 // Vue.prototype.$ajax = ajax  两种定义都可以,使用时调用对应的变量
7 Vue.prototype.axios = ajax
3. axios.get()方法

3.1 无参情况

axios封装了get方法,传入请求地址和请求参数即可。 then中返回的是正常情况下的数据,而catch中返回的是错误信息。请求格式为: this.axios.get(url).then(res => {}).catch(err => {})

import axios from 'axios'
const ajax = axios.create({
  baseURL: 'http://127.0.0.1:8000'  // 配置请求路由前缀
})
Vue.config.productionTip = false
// Vue.prototype.$ajax = ajax  两种定义都可以,使用时调用对应的变量
Vue.prototype.axios = ajax

响应数据形式:

res.data.data : 就是我们后端自己返回的数据

3.2 有参情况

axios封装了get方法,get方法可以接收请求参数,请求参数定义在格式为: this.axios.get(url, { params }).then(res => {}).catch(err => {})

<script>
​
export default {
​
  mounted: function () {
    var url = 'http://127.0.0.1:8000/api/article/article/'
    var params = {   //要么定义为params 传参{params}, 使用其他变量名,传参需{params:其他名}
      is_delete: 1
    }
    // 传参数:只能解析params 
    //注意1:传递的参数定义为params时,this.axios.get(url,{params})
    //注意2: 传递的参数定义为searchData时,this.axios.get(url,{params:searData})
    this.axios.get(url, { params })
      .then(res => {
        console.log(res.data)
      })
      .catch(err => {
        alert(err)
      })
  }
}
</script>
4. axios.post()方法

axios封装了post方法,post方法可以接收请求参数,请求参数定义在格式为: this.axios.post(url, params).then(res => {}).catch(err => {})

export default {
​
  mounted: function () {
    var url = 'http://127.0.0.1:8000/api/article/article/'
    var params = {
      title: '1213',
      desc: '321'
    }
    //post传参:参数params不需要{}
    this.axios.post(url, params)
      .then(res => {
        console.log(res.data)
      })
      .catch(err => {
        alert(err)
      })
  }
}
</script>
5. axios经典写法

axios的经典写法,post请求格式为: this.axios({method: 'post',url: url,data: params}).then(res => {}).catch(err => {})

<script>export default{
    
      mounted: function() {
        var url = 'http://127.0.0.1:8000/api/article/article/'
        var params ={
          title: '121322',
          desc: '321'}
        this.axios({
          method: 'post',
          url: url,
          data: params
        }).then(res =>{
          console.log('成功')
        }).catch(err =>{
          console.log('失败')
        })
      }
    }
</script>

免责声明:文章转载自《vue的axios使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇前端数据可视化插件:Highcharts、Echarts和D3(区别)ArcGIS系列软件所使用的Python版本下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

搞懂:MVVM模型以及VUE中的数据绑定数据劫持发布订阅模式

搞懂:MVVM模式和Vue中的MVVM模式 MVVM MVVM : model - view - viewmodel的缩写,说都能直接说出来 model:模型,view:视图,view-Model:视图模型 V:视图,即浏览器最前端渲染的页面 M:模型,数据模型,就是后端页面渲染依赖的数据 VM:稍后再说,因为暂时还不知道怎么工作,什么场景,直接解释有...

Vue|退出功能

一、前言 在我们进行web开发时,有一个很常规的功能退出登录,那么vue是怎么实现的呢 二、具体步骤   1、在index组件中,添加退出登录按钮,并且点击事件绑定一个退出方法   2、查看后端开发的接口文档,在用户模块里面,封装退出方法   3、在index的组件中,方法区域中调用退出登录   4、效果 三、总结 先找到对应的模块,定义好退出登录...

为什么有sessionStorage,localStorage等,还需要vuex

定义 1.local storage local storage以文件的方式存储在本地,永久保存。只能存储字符串类型, 对于其他类型可使用JSON.stringify和JSON.parse方法转换存储。 用法:localStorage.setItem("token": value); localStorage.token = value; localSto...

Vue全家桶系列【vue3更新中.....】

一. 简介  1. 说明   Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。 V...

Vue实现PC端分辨率自适应

方案 lib-flexible+ px2remLoader lib-flexible:阿里可伸缩布局方案 px2rem-loader:px转rem 安装依赖 npm install px2rem-loader -D npm install lib-flexible -S 引入依赖 main.js引入lib-flexible import...

spring security控制session

spring security控制session本文给你描述在spring security中如何控制http session。包括session超时、启用并发session以及其他高级安全配置。 创建session时机我们可以准确地控制什么时机创建session,有以下选项进行控制: always – 如果session不存在总是需要创建; ifRequ...