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

相关推荐
hunterandroid2 分钟前
[鸿蒙从零到一] HarmonyOS 冷启动瀑布图分析与关键路径裁剪实战
前端·华为
郭邯6 分钟前
用 Canvas 实现纯前端图片格式互转:PNG/JPG/WebP 一键切换,还能控制质量与尺寸
前端
shmily麻瓜小菜鸡10 分钟前
JavaScript / TypeScript 易踩坑知识点完全指南 -假值(Falsy Values)完全指南
开发语言·javascript·typescript
工边页字11 分钟前
Electron应用的8种防护方式
前端·javascript·electron
卤蛋fg613 分钟前
vue 抽屉组件挂载到指定元素内显示,,表格自适应弹窗宽高
vue.js
小鱼咕噜咕噜18 分钟前
Element UI的el-upload文件上传与ZIP文件解压上传
javascript
labixiong19 分钟前
z-index: 99999 输给 z-index: 2?原生弹窗的 Top Layer 排位战:后进者居上、看得见却点不着
前端·html
deli00720 分钟前
CSS 渐变生成器:拖两个颜色直接给代码,做按钮背景不用手写
前端
陈拉斯21 分钟前
上线一个多人扫码网页娱乐工具,我在并发、SEO、PWA 和打包脚本上踩的 8 个坑
javascript