Ajax的基础知识

Ajax就是异步的JavaScript和XML

Ajax的作用

  1. 数据交换:通过Ajax可以给服务器发送请求,并获取服务器响应的数据
  2. 异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如搜索联想、用户名是否可用的检查等等

同步和异步:

原生Ajax(淘汰)

Ajax-Axios2

Axios入门

  1. 引入Axios的js文件
  2. 使用Axios发送请求,并获取响应结果

简化版本:

例子:

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <style>
        table {
            width: 60%;
            border-spacing: 0; /* 设置表格单元格之间的间距为 0 */
        }

        th, td {
            border: 1px solid black; /* 设置单元格边框 */
            padding: 8px; /* 设置单元格内边距 */
            text-align: center; /* 文本居中 */
        }
    </style>
</head>
<body>
    <div id="app">
        <table>
            <tr>
                <th>id</th>
                <th>login</th>
                <th>node_id</th>
                <th>url</th>
                <th>html_url</th>
                <th>type</th>
            </tr>
    
            <tr v-for="(user) in emps">
                <td>{{user.id}}</td>
                <td>{{user.login}}</td>
                <td>{{user.node_id}}</td>
                <td>{{user.url}}</td>
                <td>{{user.html_url}}</td>
                <td>{{user.type}}</td>
            </tr>
        </table>
    </div>

    <script>
        new Vue({
            el: "#app",//vue接管区域
            data: {
                emps:[]
            },
            mounted(){
                axios.get("https://api.github.com/users").then(result =>{
                    this.emps = result.data; 
                })
            }
        });

    </script>
</body>
</html>

效果:

使用了 Vue.js 和 Axios 来创建一个简单的页面,从 GitHub API 获取用户信息并显示在表格中。

让我解释一下代码的运行过程:

  • 在 HTML 部分,你定义了一个表格,其中有一个表头和一个用于显示员工信息的表格体。
  • 在 Vue.js 部分,你创建了一个 Vue 实例,并将其绑定到 id 为 "app" 的 DOM 元素上。
  • 在 data 属性中,你定义了一个名为 emps 的数组,用于存储从 GitHub API 获取的员工信息。
  • 在 mounted 生命周期钩子中,当 Vue 实例挂载到 DOM 上时,会执行 axios.get 方法发起 GET 请求,获取 GitHub 用户信息。
  • 当请求成功时,将结果中的数据(即 GitHub 用户信息)赋值给 emps 数组,然后 Vue 会自动将数据渲染到页面上。
相关推荐
花开盛夏^.^6 小时前
电脑打开多个浏览器Web窗口占用较大的运行内存的原因
前端·浏览器
Dxy12393102167 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷7 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
馒头不想说话7 小时前
实体店老板的24小时AI运营员工,写、剪、发全自动,省下一整个团队工资
前端
椒哥9 小时前
一天被问几十次"允许",我统计了 517 次,然后写了个插件
前端·javascript·github
风骏时光牛马9 小时前
生成一个AI稳定性治理及疑难问题分析标题,只需要一个标题,不需要其他的任何文本。
前端
莫西干式秃头9 小时前
用 AI + threejs 写了个浏览器里的 3D 动作游戏《武来》:砍怪、放技能、开 SU7
前端·人工智能·three.js
kyriewen10 小时前
我测了 6 种防请求竞态的写法:只有 1 种真能打
前端·javascript·程序员
孟健10 小时前
用 WorkBuddy 做个人名片网页,挂上开源设计技能后效果完全不同了
前端·人工智能·ai编程
IT_陈寒10 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端