vue之axios基本使用

文章目录

  • [1. axios 网络请求库](#1. axios 网络请求库)
  • [2. axios+vue](#2. axios+vue)

1. axios 网络请求库



html 复制代码
<body>
<input type="button" value="get请求" class="get">
<input type="button" value="post请求" class="post">
<!-- 官网提供的 axios 在线地址 -->
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script>
    /*
        接口1:随机笑话
        请求地址:https://autumnfish.cn/api/joke/list
        请求方法:get
        请求参数:num(笑话条数,数字)
        响应内容:随机笑话
    */
    document.querySelector(".get").onclick = function () {
        axios.get("https://autumnfish.cn/api/joke/list?num=3")
            //测试错误触发事件
            // axios.get("https://autumnfish.cn/api/joke/list1234?num=6")
            .then(function (response) {
                console.log(response);
            },function(err){
                console.log(err);
            })
    }
    /*
         接口2:用户注册
         请求地址:https://autumnfish.cn/api/user/reg
         请求方法:post
         请求参数:username(用户名,字符串)
         响应内容:注册成功或失败
     */
    document.querySelector(".post").onclick = function () {
        axios.post("https://autumnfish.cn/api/user/reg",{username:"雲兮动人"})
            .then(function(response){
                console.log(response);
            },function (err) {
                console.log(err);
            })
    }

</script>
</body>
  • get请求结果,获取到三条笑话结果
  • get请求,指定不存在的接口,返回错误信息
  • post请求,指定 username
  • 再次注册时,发现已经存在同名,不能注册了
  • 把post请求地址api改成不存在的,结果返回错误,跟get请求的回调函数一样返回错误的信息
  • 在控制台的Network 下查看是不是基于Ajax ,点击get、post请求,查看

2. axios+vue




  • 案例:获取笑话
html 复制代码
<body>
<div id="app">
    <input type="button" value="获取笑话" @click="getJoke">
    <p> {{ joke }}</p>
</div>
<!-- 官网提供的 axios 在线地址 -->
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
    /*
        接口:随机获取一条笑话
        请求地址:https://autumnfish.cn/api/joke
        请求方法:get
        请求参数:无
        响应内容:随机笑话
    */
    var app = new Vue({
        el:"#app",
        data:{
            joke:"很好笑的笑话"
        },
        methods: {
            getJoke:function(){
                // console.log(this.joke);
                var that = this;
                axios.get("https://autumnfish.cn/api/joke").then(function(response){
                    //console.log(response)
                     console.log(response.data);
                    // console.log(this.joke);
                    that.joke = response.data;
                },function (err) {  })
            }
        },
    })
</script>
</body>
  • 点击按钮后,就会改变一次获取到笑话的内容

相关推荐
朱小勇本勇29 分钟前
Python-Pdf转Markdown
前端·python·pdf
EasyNTS39 分钟前
EasyPlayer.js遇到播放RTMP视频时,画面显示异常是什么原因?
开发语言·javascript·音视频
小满zs1 小时前
React第二十章(useMemo)
前端·javascript·react.js
赵大仁1 小时前
Tailwind CSS:现代 CSS 框架的优雅之选
前端·javascript·vue.js·前端框架·css3·html5·scss
如影随从1 小时前
07-ArcGIS For JavaScript--隐藏参数qualitySettings(memory和lod控制)
开发语言·javascript·arcgis·memorylimit·lodfactor
GIS学姐嘉欣1 小时前
25考研希望渺茫,工作 VS 二战,怎么选?
前端·学习·考研·gis
二川bro2 小时前
图片叠加拖拽对比展示效果实现——Vue版
前端·vue.js
russle2 小时前
android app构建时排除指定类
android·前端·chrome
愚愚是个大笨蛋2 小时前
自定义VUE指定,实现鼠标悬停显示提示面板,离开元素或面板后面板消失
前端·javascript·vue.js
CSNMD2 小时前
VueRouter之HelloWorld
前端·javascript·vue.js