Axios入门使用,Async和Await用法,解构赋值语法

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="./../lib/vue.js"></script>
<script src="./../lib/axios.min.js"></script>
</head>
<body>
<!-- 在后面的Vue|、
React课程中都会用到axios来请求数据。
中文官网地址: http://www.axios-js.com/
英文官网地址: https://www.npmjs.com/package/axios
--> <button id="postBtn">postBtn</button>
<button id="postBtn2">postBtn2</button>
<button id="postBtn3">postBtn3</button> <script> // result对象是 Promise返回的
// const result = axios({
// method: 'GET',
// url: 'http://www.liulongbin.top:3006/api/getbooks'
// })
// result.then(res => {
// console.log(res.data)
// }) // AXIOS GET请求传参
// const result2 = axios({
// method: 'GET',
// url: 'http://www.liulongbin.top:3006/api/getbooks',
// params: { // url传参
// aaa: 100,
// vvv: 'sdas'
// }
// })
// result2.then(res => {
// console.log(res.data)
// }) let postBtn = document.querySelector('#postBtn')
postBtn.addEventListener('click', function (event) {
const result2 = axios({
method: 'POST',
url: 'http://www.liulongbin.top:3006/api/post',
params: { // url传参 post请求也能传递
aaa: 100,
vvv: 'sdas'
},
data: {
name: 'zs',
age: 20
}
})
result2.then(res => {
console.log(res.data)
})
}) // 如果返回值是Promise对象,可以使用async + await简化代码块
let postBtn2 = document.querySelector('#postBtn2')
postBtn2.addEventListener('click', async function (event) {
const result2 = await axios({
method: 'POST',
url: 'http://www.liulongbin.top:3006/api/post',
params: { // url传参 post请求也能传递
aaa: 100,
vvv: 'sdas'
},
data: { // 请求体传参 在GET请求中并不会携带....
name: 'zs',
age: 20
}
})
console.log(result2)
}) // 获取一部分属性对象 可以使用解构语法
let postBtn3 = document.querySelector('#postBtn3')
postBtn3.addEventListener('click', async function (event) {
/**
* 可以结构重命名
* data: res 将data属性更名为res
*
* 解决 data.data的问题
*/
const { config, data: res, headers, request, status, statusText } = await axios({
method: 'GET',
url: 'http://www.liulongbin.top:3006/api/getbooks'
})
console.log(res.data)
}) </script>
</body>
</html>

Axios的Post请求和GET请求

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="./../lib/vue.js"></script>
<script src="./../lib/axios.min.js"></script>
</head>
<body>
<!-- 在后面的Vue|、
React课程中都会用到axios来请求数据。
中文官网地址: http://www.axios-js.com/
英文官网地址: https://www.npmjs.com/package/axios
-->
<button id="getBtn">GET-BTN</button>
<button id="postBtn">POST-BTN</button> <script>
document
.querySelector('#getBtn')
.addEventListener('click', async function(event) {
// 无参GET
// const { data: result } = await axios.get('http://www.liulongbin.top:3006/api/getbooks')
// console.log(result) // url带参GET
const { data: result } = await axios.get('http://www.liulongbin.top:3006/api/getbooks', {
params: { id: 1 }
})
console.log(result)
})
document
.querySelector('#postBtn')
.addEventListener('click', async function(event) {
// url带参POST 对象直接是请求体
const { data: result } = await axios.post('http://www.liulongbin.top:3006/api/post', {
asdas : false
})
console.log(result)
})
</script>
</body>
</html>

  

【Vue2】Axios、Async+Await、解构赋值的更多相关文章

  1. 简单的axios请求返回数据解构赋值

    本地  data.json 文件 { "name": "大熊", "age": 18, "fnc": [ 1, 2, 3 ...

  2. ES6--let,解构赋值,promise && ES7--async

    ES-->IE10.Google.火狐 ES6 let 声明的关键字 不能重复声明 块级作用域 <input type="button" value="1&q ...

  3. 变量的解构赋值////////////z

    变量的解构赋值 数组的解构赋值 对象的解构赋值 字符串的解构赋值 数值和布尔值的解构赋值 函数参数的解构赋值 圆括号问题 用途 数组的解构赋值 基本用法 ES6允许按照一定模式,从数组和对象中提取值, ...

  4. JavaScript学习笔记 -- ES6学习(三) 变量的解构赋值

    1.解构赋值的定义 在ES6中,允许按照一定模式,从数组和对象中提取值(所谓解构),然后对变量进行赋值. var a = 1; var b = 2; var c = 3; //等价于 var [a, ...

  5. ES 6 : 变量的解构赋值

    1. 数组的解构赋值 [ 基本用法 ] 按照一定的模式从数组或者对象中取值,对变量进行赋值的过程称为解构. 以前,为变量赋值只能直接指定值: 而ES 6 允许写成下面这样: 上面的代码表示,可以从数组 ...

  6. ECMAScript 6入门 - 变量的解构赋值

    定义 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 解构赋值不仅适用于var命令,也适用于let和const命令. 解构赋值的规则是,只要 ...

  7. ECMAScript 6之变量的解构赋值

    1,数组的解构赋值 基本用法 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. var a = 1; va ...

  8. ES6学习笔记(let,const,变量的解构赋值)

    1.let: ; i < 3; i++) { let i = 'abc'; console.log(i); } // abc // abc // abc 不存在变量提升,它所声明的变量一定要在声 ...

  9. es6的解构赋值用途

    (1)交换变量的值 let x = 1; let y = 2; [x, y] = [y, x]; 上面代码交换变量x和y的值,这样的写法不仅简洁,而且易读,语义非常清晰. (2)从函数返回多个值 函数 ...

  10. ES6学习之 解构赋值

    最近看了一个vue的项目,发现作者大量使用了ES6的语法,包括async, Promise, Set, Map还有一些解构赋值, 才发现自己对于ES6的语法缺乏了总结和运用,看得有点艰难,所以重新学习 ...

随机推荐

  1. k8s网络问题以及容器跨宿主机通信原理

    [0]资源配置文件 [root@mcwk8s03 mcwtest]# ls mcwdeploy.yaml [root@mcwk8s03 mcwtest]# cat mcwdeploy.yaml api ...

  2. vuex做购物车功能

    先创建一个cart组件 <template> <div> <ListItem></ListItem> </div> </templat ...

  3. 关于使用Gitlab CI-CD

    关于使用 Gitlab CI/CD 如果是个人建议自己写脚本,手动运行,而不是使用 Gitlab CI/CD. 免费的 Runner 需要 Credit Card!

  4. mysql中,时间类型datetime和timestamp的区别

    TIMESTAMP和DATETIME的相同点: 两者都可用来表示 YYYY-MM-DD HH:MM:SS 类型的日期. TIMESTAMP和DATETIME的不同点: 1>  两者的存储方式不一 ...

  5. Easysearch 容量规划建议

    基于容量估算 主要问题: 每天将索引多少原始数据(GB)?保留数据多少天? 原始数据膨胀率 您将强制执行多少个副本分片? 您将为每个数据节点分配多少内存? 您的内存:数据比例是多少? 原则 保留 +1 ...

  6. Flink状态(一)

    key状态和算子状态 key状态 key状态总是与key有关,只能被用于keyedStream类型的函数与算子.你可以认为key状态是一种被分区的算子状态,每一个key有一个状态分区.每一个key状态 ...

  7. 「C++」复杂模拟【壹】

    建议开启目录食用 阅读本文之前建议您先看这里,如果您已经看完了,那么就可以放心大胆的学习本文了. 我认为其实本文的难度还是比较大的,今天我们题是来自山东省省选,所以建议大家谨慎阅读,如果您是专业程序员 ...

  8. Masonry在视图相对关系处理中的各种“offset”

    如果我们需要设置一个view在另一个view的右边缘距离一定距离的地方,利用Masonry这么写: [a mas_makeConstraints:^(MASConstraintMaker *make) ...

  9. CAEmitterLayer动画的开始和结束

    有个需求,要求模仿微信做表情下雨的动画,一开始想用CAEmitterLayer,实现的代码如下: //期望:显示特效五秒后结束特效 UIImage *image = [UIImage imageNam ...

  10. 汇总:"undefined reference to" 问题解决方法

    背景 在Linux下编程容易出现的现象,就是在链接多文件的时候总是报错,类似下面这样的错误: (.text+0x13): undefined reference to `func' 关于undefin ...