从零开始教会你Axios

简介: 从零开始教会你Axios

😀前言

本篇是讲解 Axios 库文件的详细笔记包括应用实列和注意事项以及 Axios的优点


🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉


Axios

基本说明

  1. axios 是独立于 vue 的一个项目,不是 Vue 的一部分
  2. axios 通常和 Vue 一起使用,实现 Ajax 操作
  3. Axios 是一个基于 promise 的 HTTP 库

学习文档

https://javasoho.com/axios/

Axios 库文件

1、使用 axios 需要引入 axios 库文件

2、可以直接引入

< script scr=“https://unpkg.com/axios/dist/axios.min.js”>

3、也可以下载 axios.min.js

< script src=“vue.js”>

< script src=“axios.min.js”>

Axios 应用实例

● 需求: 在 Vue 项目中使用 Axios, 从服务器获取 json 数据, 显示在页面

  1. axios.get() 表示发出ajax请求
  2. http://localhost:63342/axios/data/response.data.json 表示请求的url要根据实际情况来填写
  3. axios发出ajax请求的基本语法


axios.get(url).then(箭头函数).then(箭头函数)…catch(箭头函数)


(1) 如果get请求成功就进入到第一个then()

(2) 可以再 第一个then()中继续发出axios的ajax请求

(3) 如果有异常, 会进入到 catch(箭头函数)

  1. list在生命周期函数created() 中调用-自己去回顾vue的生命周期函数
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>axios的应用实例</title>
</head>
<body>
<!--页面视图-->
<div id="app">
    <h1>{{msg}}</h1>
    <table border="1" width="200">
        <tr>
            <td>名字</td>
            <td>年龄</td>
        </tr>
        <tr v-for="monster in monsterList">
            <td>{{monster.name}}</td>
            <td>{{monster.age}}</td>
        </tr>
    </table>
</div>
<script src="vue.js"></script>
<script src="axios.min.js"></script>
<script>
    new Vue({
        el: "#app",
        data: {
            msg: "妖怪信息列表",
            monsterList: [] //表示妖怪的信息数组
        },
        methods: {//自定义方法
            list() {//发送ajax请求,获取数据 axios
                /*
                    解读
                    1. axios.get() 表示发出ajax请求
                    2. http://localhost:63342/axios/data/response.data.json 表示请求的url
                       要根据实际情况来填写
                    3. axios发出ajax请求的基本语法
                       axios.get(url).then(箭头函数).then(箭头函数)...catch(箭头函数)
                       (1) 如果get请求成功就进入到第一个then()
                       (2) 可以再 第一个then()中继续发出axios的ajax请求
                       (3) 如果有异常, 会进入到 catch(箭头函数)
                    4. list在生命周期函数created() 中调用-自己去回顾vue的生命周期函数
                 */
                axios.get("http://localhost:63342/axios/data/response.data.json")
                    .then(responseData => {
                        console.log("responseData= ", responseData)
                        //使用JSON.stringify(json) 把json对象转成一个字符串,方便观察
                        console.log("responseData= ", JSON.stringify(responseData));
                        // console.log("responseData.data= ", responseData.data)
                        // console.log("responseData.data.data= ", responseData.data.data)
                        console.log("responseData.data.data.item= ", responseData.data.data.items)
                        //将妖怪列表数组信息, 绑定到 data数据池的 monsterList
                        this.monsterList = responseData.data.data.items;
                        //可以再次发出ajax请求, 故意发出了第二次ajax请求, 回顾老师讲过的promise发出多次请求
                        // return axios.get("http://localhost:63342/axios/data/response.data.json")
                    })
                    // .then(responseData => {
                    //     console.log("第二次axios发出 ajax请求responseData= ", responseData)
                    // })
                    .catch(err => {
                    console.log("异常=", err)
                    })
            }
        },
        created() {
            this.list();
        }
    })
</script>
</body>
</html>

注意

responseData.data.data.items 之所以要二个data的原因是 第一个 .data的返回第一次请求的url的对象 第二个 .data才是返回需要的对象然后 .items读取

数据json

{
  "success": true,
  "message": "成功",
  "data": {
    "items": [
      {
        "name": "牛魔王",
        "age": 800
      },
      {
        "name": "红孩儿",
        "age": 500
      },
      {
        "name": "蜈蚣精",
        "age": 200
      }
    ]
  }
}

注意事项和细节说明

1 将 JSON 对象转成 JSON.stringify(response)


2 格式化输出 JSON 字符串,方便观察分析到 https://www.json.cn看看

😄总结

我们使用Axios要注意是vue的一个独立的一个项目极大的减轻的程序员的工作负担是更加注重业务开发

🤔从上面得出Axios的优点

文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁

希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞


目录
相关文章
|
关系型数据库 数据库 文件存储
|
7月前
|
前端开发
Promise.all()方法的作用是什么?
Promise.all()方法的作用是什么?
574 121
|
2月前
|
Ubuntu 关系型数据库 MySQL
基于Ubuntu 24编译部署开源PolarDB-X
作者介绍: 韦玮 浙江宇视科技有限公司分布式存储开发工程师 浙江宇视科技有限公司是全球AIoT产品、解决方案与全栈式能力提供商,以“ABCI”(AI人工智能、BigData大数据、Cloud云计算、IoT物联网)技术为核心。
|
前端开发 JavaScript 开发者
深入解析前端开发中的模块化与组件化实践
【10月更文挑战第5天】深入解析前端开发中的模块化与组件化实践
419 1
|
Ubuntu Windows
ARM架构安装ubuntu系统
8月更文挑战第19天
2962 0
|
安全 开发工具 Android开发
说一说你对移动应用中的社交分享功能的实现。
移动应用中的社交分享功能增强互动性与传播力,提升用户体验。开发者通过集成社交媒体SDK(如微信SDK)实现分享,使用OAuth进行授权。定制分享内容样式,选择合适平台,如针对年轻人选择抖音、快手。统计分享数据评估效果,优化用户体验,遵守法规,全面测试并根据用户反馈持续优化。此功能对应用成功至关重要。
311 0
|
前端开发 安全 容器
CSS如何优雅实现卡片多行排列布局?
【8月更文挑战第24天】CSS如何优雅实现卡片多行排列布局?
1014 3
|
JSON 前端开发 JavaScript
axios的详细使用
axios的详细使用
534 1
|
机器学习/深度学习 人工智能 TensorFlow
生成完美口型同步的 AI 数字人视频
在当今数字媒体和人工智能技术的推动下,生成完美口型同步的AI数字人视频成为备受关注的研究领域。本研究旨在开发一种技术,能够实现生成完美口型同步的AI数字人视频,使虚拟人物的口型与语音内容完美匹配。采用了深度学习方法,结合了语音识别、面部运动生成和视频合成技术,以实现这一目标。通过语音识别模型将输入的文本转换为音频波形,利用面部运动生成模型根据音频波形生成对应的面部动作序列,这些动作序列可以准确地反映出发音的口型和面部表情,最后生成口型同步的AI数字人视频。这项技术具有广泛的应用前景,可用于虚拟主持人、教育视频、学习平台等领域,提升视频内容的真实感和沟通效果。
1621 0
|
Web App开发 监控 JavaScript
chrome安装vue插件 vue-devtools
chrome安装vue插件 vue-devtools
4436 0