Vue入门(10)axios

1.安装

npm install axios

2.使用

执行 GET 请求
// 为给定 ID 的 user 创建请求
axios.get('/user?ID=12345')
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

// 可选地,上面的请求可以这样做
axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
执行 POST 请求
axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
执行多个并发请求
function getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // 两个请求现在都执行完成
  }));

3.axios API

transformResponse 在传递给 then/catch 前,允许修改响应数据。

<div id="app">
    <button @click="handler">按钮</button>
    <h1>这是请求回来的数据{{msg}}</h1>
</div>
<script>
    new Vue({
        el : "#app",
        data(){
            return {
                msg : ""
            }
        },
        methods : {
            handler(){
                axios.get("http://ltggbm.ktkt.com/1/report/index",{
                    transformResponse: [function (data) {
                        // 对 data 进行任意转换处理
                        data = JSON.parse(data);
                        console.log(data[0].title);
                        data[0].title = 111
                        return data;
                    }]
                })
                .then((res) => {
                    console.log(res.data[0].title);
                    this.msg = res.data[0].title
                }).catch((err) => {
                    
                });
            }
        }
    })
</script>

配置公共数据

<div id="app">
    <button @click="handler">按钮</button>
    <h1>这是请求回来的标题:{{title}}</h1>
    <p>这是请求回来的内容:{{content}}</p>
</div>
<script>
    new Vue({
        el: "#app",
        data() {
            return {
                title: "",
                content: ""
            }
        },
        methods: {
            handler() {
                //配置公共数据
                axios.defaults.baseURL = "http://ltggbm.ktkt.com/";
                axios.get("1/report/index")
                    .then((res) => {
                        this.title = res.data[0].title;
                        this.content = res.data[0].content
                    }).catch((err) => {

                    });
            }
        }
    })
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值