• 【前端】Vue网络应用


    目录

    一、网络应用

    1.1axios

    1.2axios+vue


    一、网络应用

    Vue结合网络数据开发应用

    1.1axios

    功能强大的网络请求库

    1. axios.get(地址?key1=value1&key2=value2).then(function(response){},function(err){})
    2. axios.post(地址{key1=value1,key2=value2}).then(function(response){},function(err){})
    •  axios必须先导入才可以使用
    • 使用get或post方法即可发送对应的请求
    • then方法中的回调函数会在请求成功或者失败时触发
    • 通过回调函数的形参可以获取响应内容或错误信息
    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <button class="get">get请求button>
    11. <button class="post">post请求button>
    12. <script src="https://unpkg.com/axios/dist/axios.min.js">script>
    13. <script>
    14. /* 随机笑话
    15. 请求地址:https//autumnfish.cn/api/joke/list
    16. 请求方法:get
    17. 请求参数:num
    18. 响应内容:随机笑话 */
    19. document.querySelector(".get").onclick = function () {
    20. axios.get("https://autumnfish.cn/api/joke/list?num=6").then(function (response) {
    21. console.log(response);
    22. }, function (err) {
    23. console.log(err);
    24. })
    25. }
    26. /* 用户注册
    27. 请求地址:https://autumnfish.cn/api/user/reg
    28. 请求方法:post
    29. 请求参数:username
    30. 响应内容:注册成功或失败 */
    31. document.querySelector(".post").onclick = function () {
    32. axios.post("https://autumnfish.cn/api/user/reg", { username: "jack" }).then(function (response) {
    33. console.log(response);
    34. }, function (err) {
    35. console.log(err);
    36. })
    37. }
    38. script>
    39. body>
    40. html>

    文档传送门:GitHub - axios/axios: Promise based HTTP client for the browser and node.js

    1.2axios+vue

    1. <script src="https://unpkg.com/axios/dist/axios.min.js">script>
    2. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js">script>
    • axios回调函数中的this已经改变,无法访问到data中数据
    • 把this保存起来,回调函数中直接使用保存的this即可
    • 和本地应用的最大区别就是改变了数据来源
    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <div id="app">
    11. <button @click="getJoke">获取笑话button>
    12. <p>{{joke}}p>
    13. div>
    14. <script src="https://unpkg.com/axios/dist/axios.min.js">script>
    15. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js">script>
    16. <script>
    17. /* 接口:随机获取一条笑话
    18. 请求地址:https://autumnfish.cn/api/joke
    19. 请求方法:get
    20. 请求参数:无
    21. 响应内容:随机笑话 */
    22. var app = new Vue({
    23. el: "#app",
    24. data: {
    25. joke: "很好笑的笑话"
    26. },
    27. methods: {
    28. getJoke: function () {
    29. var that = this;
    30. axios.get("https://autumnfish.cn/api/joke").then(function (response) {
    31. that.joke = response.data;
    32. },
    33. function (err) {
    34. console.log(err);
    35. })
    36. }
    37. }
    38. })
    39. script>
    40. body>
    41. html>
  • 相关阅读:
    Token和Session有什么区别,面试官满意的答案
    【MATLAB教程案例51】传统神经网络学习——使用matlab神经网络工具箱实现BP、PNN、GRNN神经网络等
    家电巨头“竞技”医疗器械
    【全面速懂】C#使用WSDL服务
    StarkNet新手指南
    Qt-OpenCV学习笔记--最小包覆矩形--minAreaRect()
    准大学生们利用假期学点编程吧
    【刷爆LeetCode】七月算法集训(30)拓扑排序
    USB连接与检测
    mysql超全语法大全
  • 原文地址:https://blog.csdn.net/qq_45764950/article/details/127858847