当前位置:   article > 正文

【Vue】通过Axios实现异步通信(简单案例)

【Vue】通过Axios实现异步通信(简单案例)

一、Axios介绍

1、是什么

    Axios 是一个基于 promise 的 HTTP 库,简单的讲就是可以发送get、post请求。当然这些请求ajax和jquery也能做,但是由于Vue、React等框架的出现,促使了Axios轻量级库的出现,因为Vue等,不需要操作Dom,所以不需要引入Jquery.js了。这样一来Axios就会更加方便。

2、特性

官网连接:起步 | Axios中文文档 | Axios中文网 (axios-http.cn)

b3121e5c032848ad821d31dce4d920fd.png

3、安装

使用 npm(使用Vue框架的时候安装):

$ npm install axios

使用 unpkg CDN:

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

4、使用语法

以post和get请求为例(ps:axios的使用有很多种方法):

post请求(ps:在URL后可以携带参数)

axios.post('URL') .then(function(response){  });

get请求(ps:在URL后可以携带参数)

axios.get('URL') .then(function(response){  });

二、案例实操

   这里我们通过一个代码段来实现一下axios的数据请求功能。

①:我们准备好vue和axios所需的cdn:

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

②:编写一段data.json

  1. {
  2. "name": "lfy",
  3. "age": 18,
  4. "url": "http://baidu.com",
  5. "page": 1,
  6. "address": {
  7. "street": "快乐街",
  8. "city": "成都",
  9. "country": "中国"
  10. },
  11. "list": ["Java","c++","Php"]
  12. }

③:在vue实例中,编写对象接受data.json的数据,并通过前端显示

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <div id="vue">
  9. <div>{{info.name}}</div>
  10. <div v-for="item in info.list">
  11. {{item}}
  12. </div>
  13. <a v-bind:href="info.url">点我</a>
  14. </div>
  15. <!--导入vue.js-->
  16. <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
  17. <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  18. <script type="text/javascript">
  19. var vm=new Vue({
  20. el:"#vue",
  21. data(){//这是一个data函数
  22. return{
  23. //请求的返回参数必须和json字符串格式一样
  24. info:{
  25. name:null,
  26. address:{
  27. street:null,
  28. city:null,
  29. country:null
  30. },
  31. url:null,
  32. list:[]
  33. }
  34. }
  35. },
  36. mounted(){//钩子函数 链式编程 ES6新特性
  37. axios.get('../data.json').then(response=>(console.log(this.info=response.data)))
  38. }
  39. });
  40. </script>
  41. </body>
  42. </html>

效果:

90c3b40aae964abd8ac0d649aecd18bb.png

三、总结

   这里写的内容比较简单,只是一个关于axios的介绍和简单的案例演示,希望对正在观看的小伙伴有所帮助!

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/509969
推荐阅读
相关标签
  

闽ICP备14008679号