zoukankan      html  css  js  c++  java
  • vue-resource和axios的简单使用方法总结

    vue-resource的使用

    首先要在main.js中引入

    
    import Vue from 'vue';
    import VueResource from 'vue-resource';
    Vue.use(VueResource);

    然后在组件中才能使用

    
    <template lang="html">
    
    </template>
    
    <script>
    export default {
        data(){
            return{
    
            }
        },
        methods:{
            loadData(){
                this.$http.get('/url').then((response) => {
                    // success
                    console.log(response.body.data);
                }),(error => {
                    // error
                    console.log(error);
                })
            }
        }
    }
    </script>
    
    <style lang="css">
    
    </style>
    
    

    vue-axios的使用

    首先要在main.js中引入 But axios不能使用use方法

    1. Vue.prototype方法
    
    import Vue from 'vue';
    
    import axios from 'axios';
    
    Vue.prototype.$axios = axios;
    
    

    然后在组件中才能使用

    
    <template lang="html">
    
    </template>
    
    <script>
    export default {
        data(){
            return{
    
            }
        },
        methods:{
            loadData(){
                this.$axios.get(['/static/data/user.json'])
                    .then((response) => {
                        // success
                        console.log(response.data);
                    })
                    .catch((error) => {
                        //error
                        console.log(error);
                    })
            }
        }
    }
    </script>
    
    <style lang="css">
    
    </style>
    

    vue-axios的错误处理

    实现网络不可达,网络无响应等等情况下的处理机制

    Handling Errors

    
    
    axios.get('/user/12345')
        .catch(function (error) {
            if (error.response) {
    
                // The request was made and the server responded with a status code
                // that falls out of the range of 2xx
    
                console.log(error.response.data);
    
                console.log(error.response.status); // 状态码
    
                console.log(error.response.headers);
    
            } else if (error.request) {
    
                // The request was made but no response was received
                // `error.request` is an instance of XMLHttpRequest in the browser and an instance of
                // http.ClientRequest in node.js
    
                console.log(error.request);
            } else {
    
                // Something happened in setting up the request that triggered an Error
    
                console.log('Error', error.message);
            }
            console.log(error.config);
        });    
    
    

    You can define a custom HTTP status code error range using the validateStatus config option. –自定义选项

    
    
    axios.get('/user/12345', {
        validateStatus: function (status) {
            return status < 500; // Reject only if the status code is greater than or equal to 500
        }
    })
    

     

  • 相关阅读:
    Object-C,NSSet,不可变集合
    NYIST 860 又见01背包
    NYIST 1070 诡异的电梯【Ⅰ】
    HDU 1542 Atlantis
    HDU 4756 Install Air Conditioning
    CodeForces 362E Petya and Pipes
    HDU 4751 Divide Groups
    HDU 3081 Marriage Match II
    UVA 11404 Palindromic Subsequence
    UVALIVE 4256 Salesmen
  • 原文地址:https://www.cnblogs.com/pachulia/p/9470868.html
Copyright © 2011-2022 走看看