Vue Axios

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 使用 - Axios

目录

Axios

请求方法

功能

安装

使用CDN

引入axios

使用axios

赋值

总结


Axios

Axios,基于 Promise 的 HTTP 客户端,可以工作于浏览器中,也可以在 node.js 中使用。

axios是第三方的东西,需要下载和引入。

请求方法

axios.get()

axios.post()

axios.put()

axios.delete()

功能

从浏览器中创建 XMLHttpRequest

从 node.js 中创建 http 请求

支持 Promise API

拦截请求和响应

转换请求和响应数据

取消请求

自动转换 JSON 数据

客户端支持防止 XSRF 攻击

安装

使用命令npm i axios,官网如下图:

使用CDN

如果不安装的话,也可以使用CDN方式直接引用使用。

如下图:

引入axios

把CDN网址的js文件下载到本地。

示例如下:

html 复制代码
<script src="../lib/vue.js"></script>
<script src="../lib/axios.min.js"></script>

使用axios

在按钮上绑定点击事件,在点击事件中使用axios请求json数据。

示例如下:

html 复制代码
<div id="box">
    <button @click="handleClick">ajax-axios</button>
</div>
<script>
    let vm = new Vue({
        el:"#box",
        data:{
            datalist:[]
        },
        methods:{
            handleClick() {
                axios.get("./json/ebook.json").then(res => {
                    console.log(res.data)
                })
            }
        }
    })
</script>

打印获取的数据,如下:

赋值

修改事件中的处理,改为赋值并在按钮的下方循环渲染列表。

示例如下:

html 复制代码
<div id="box">
    <button @click="handleClick">ajax-axios</button>
    <ul>
        <li v-for="item in datalist">
            <div>
                <img :src="item.cover" alt="" width="30px">{{item.title}}
            </div>
        </li>
    </ul>
</div>
<script>
    let vm = new Vue({
        el:"#box",
        data:{
            datalist:[]
        },
        methods:{
            handleClick() {
                axios.get("./json/ebook.json").then(res => {
                    this.datalist = res.data.data.data
                })
            }
        }
    })
</script>

效果:

总结

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue 使用 - Axios

相关推荐
春涧草茶39 分钟前
慢就是快16-1协程
开发语言·前端·python
Oiiouui1 小时前
linux服务器部署Logto后端与对应前端的实现
linux·服务器·前端·后端
前端小D1 小时前
JS核心底层
前端·javascript
律宏阔1 小时前
Taro 4 项目从 npm 迁移到 pnpm 踩坑实录
前端·微信小程序·taro
用户30816998764851 小时前
同一句话问 AI 15 次,答案 15 个:temperature 0 实测也不稳
前端
SameX1 小时前
ArkTS 做 5 态数据流 —— 咖啡电量的代谢状态机怎么驱动 UI
前端
Dovis(誓平步青云)1 小时前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
ruanno_top1 小时前
能点,但 Tab 不到:两个组件把「可操作」做了一半
vue.js
爱吃烧烤的技术渣1 小时前
别再手写 CRUD 了:我把 Element Plus 的工作量压缩成一份列 schema
前端·vue.js
MetWeave1 小时前
风的三十年:一个机场的风在变小吗:10,958 天的账(《风不是一个数》系列第 6 篇)
前端·数据可视化