琰哥踩过的那些坑之——VUE的ajax请求

项目需求中有些数据需要遍历,这种情况下vue算是比较合适的,这里只是对vue的简单运用,采用的是引入js的方式。

有两种方式,一种是引入“vue-resource.js”,  另一种则是引入“axios.min.js”.

    <script src="/vue/vue.min.js"></script>
    <script src="/vue/axios.min.js"></script>
    <script src="/vue/vue-resource.js"></script>

1.第一种方式:vue-resource.js

 

new Vue({
            el:"#wrapper",
            data:{
                str:"xiaoming",
                arr:[]
            },
            methods:{
                links:function () {
                    this.$http.get('http://localhost:8081/menu/getMenuLinks').then((res) => {
                        console.log(res.data);
                        this.arr=res.data;
                    });
                    return this.arr;
                }
            }
        })

然后我们看一下浏览器打印的日志:

图片可能有些不清晰,但是可以很明显看出这是他妈的是字符串  这让我咋遍历啊,然后各种将字符串转换成json,还是没什么卵用,因为这个耽误了半天,,,无奈之下只得抱着试一试的心态尝试第二种方式。

2.第二种方式:axios.min.js

new Vue({
            el:"#wrapper",
            data:{
                str:"xiaoming",
                arr:[]
            },
            methods:{
                links:function () {
                    axios.get("http://localhost:8081/menu/getMenuLinks").then (function (res) {
                        console.log(res.data);
                        this.arr = res.data;
                    })
                    return this.arr;
                }
            }
        })

然后我们再看一下这种方式下打印的日志:

然后得到的数据就正常了。

总结:

这里只是用get请求做例子,可以看出,两种请求方式的差异还蛮大的,官网好像对vue-resource不再更新了,所以我个人还是比较推荐用axios这种方式的。

希望大家以后不要再踩这个坑!

Logo

前往低代码交流专区

更多推荐