3.Axios异步通信讲解 和 JQuery Ajax 的区别

news/2024/7/10 2:10:55 标签: ajax, jquery, 前端, Vue, 异步刷新

3.1 Axios简介

Axios是一个开源的可以用在浏览器端和Node JS的异步通信框架, 她的主要作用就是实现AJAX异步通信,其功能特点如下:    官网:起步 | Axios 中文文档 (axios-http.cn)

从浏览器中创建XMLHttpRequests
从node.js创建http请求
支持Promise API[JS中链式编程]
拦截请求和响应
转换请求数据和响应数据
取消请求

自动转换JSON数据
客户端支持防御XSRF(跨站请求伪造)

 3.2为什么使用新的Axios 而不使用JQuery

由于Vue.js是一个视图层框架并且作者(尤雨溪) 严格准守SoC(关注度分离原则)所以Vue.js并不包含AJAX的通信功能, 为了解决通信问题, 作者单独开发了一个名为vue-resource的插件, 不过在进入2.0版本以后停止了对该插件的维护并推荐了Axios框架

由于jQuery操作Dom太频繁,所以少用  (其实这个框架简化了刷新的操作,相当于再此的封装

3.2 测试Axios 实现第一个异步响应

     1. 首先准备JSON的数据

{
  "name":"java学习",
  "url": "http://baidu.com",
  "page": "1",
  "isNonProfit":"true",
  "address": {
    "street": "阜阳",
    "city":"安徽",
    "country": "中国"
  },
  "links": [
    {
      "name": "百度",
      "url": "https://www.baidu.com/"
    }
  ]
}

2.测试前引入Axios 的js 文件,(没有安装的情况下,推荐使用 cdn 引入 )

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

   <div id="vue">
      {{info.name}}<br>
       {{info.address}}
   </div>

   <script>
       var vm = new Vue({
           el: "#vue",
           data(){ //这个是返回数据的方法,不是属性
               return { //请求的返回参数,必须和json 数据的变量是一样的
                   info: {  //这里面就可以,直接拼接出,默认的值,不依赖传值,才能展示
                      name: null,  //前面的vue 这个属性就可以直接接受
                      address: {
                          street: null,
                          city: null,
                          county: null
                }}}
           },
           mounted(){ //钩子函数, 这个地址是数据表的地址   把这里的得到的数据,传给data方法
               axios.get('../mydata.json').then(response=>(this.info=response.data))
           }
       });
   </script>

</body>

  一定注意看注释,

mounted(){ //钩子函数, 这个地址是数据表的地址   把这里的得到的数据,传给data方法
    axios.get('../mydata.json').then(response=>(this.info=response.data))
}
  1. 使用axios框架的get方法请求AJAX并自动将数据封装进了Vue实例的数据对象
  2. 我们在data中的数据结构必须和Ajax响应回来的数据格式匹配

3.3关于 Vue 的生命周期和说明

 


http://www.niftyadmin.cn/n/1712900.html

相关文章

C++ 学习之共用体和枚举

共用体 共用体union是一种数据类型&#xff0c;能够存储不同的数据类型&#xff0c;但只能同时存储其中的一种病数据类型。共用体的句法 union one4all {int int_val;long long_val;double double_val; };//可以使用one4all变量存储int、long、或者doubleone4all pail; pail.…

C++ 之 递增运算符(++)和递减运算符(--)

前缀格式&#xff08;i&#xff09;和后缀格式&#xff08;i&#xff09; i的意思是先将i的值加一&#xff0c;在使用新的值计算表达式。 i的意思是使用当前的值计算表达式。然后再把i的加一。 例如&#xff1a; int x 5; int y x; //运行之后x 6;y6;int z 5; int y z; …

4.关于 Vue 计算属性、内容分发、自定义事件

4.1 计算属性 计算属性的重点突出在属性两个字上(属性是名词)&#xff0c;首先它是个属性其次这个属性有计算的能力(计算是动词)&#xff0c;这里的计算就是个函数&#xff1a;简单点说&#xff0c;它就是一个能够将计算结果缓存起来的属性(将行为转化成了静态的属性)&#xf…

cmake实战(1)

cmake “hello word” 内部编译 1、准备工作 建立一个目录用来存放文件例如&#xff1a; mkdir -p /zy/cmake/ //建立第一个目录 cd /zy/cmake/ mkdir t1 cd t1建立main.c和CMakeLists.txt文档 main.c #include<stdio.h> int main() {printf("Hello World from t…

指针 和 const 结合

const 和 指针 将const用于指针有一些很特比的地方。可以用两种不同的方式将const用于指针。第一种方式是让指针指向一个常量对象&#xff0c;这样可以防止使用指针来修改所指向的值&#xff0c;第二种方式是将指针本身声明为常量&#xff0c;这样可以防止指针改变指向的位置。…

学习 Vue 的快速入门,了解核心知识 笔记

一. 关于前端的发展以及使用的技术知识 和框架 &#xff0c;前后端分离的流程 Java后端对 前端的学习了解 &#xff0c;基础知识和各框架功能发展概述&#xff0c;以及了解前后端的分离史_想成为大神说32的博客-CSDN博客 二.Vue 的概述&#xff0c;以及第一实现 Vue 的程序 Vu…

leetcode 第66题 加一 https://leetcode-cn.com/problems/plus-one。

题目描述&#xff1a; 定一个由整数组成的非空数组所表示的非负整数&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外&#xff0c;这个整数不会以零开头。 来源&#xff1a;力扣&#xff…

LiangGaRy-学习笔记-Day27

1、MySQL的安装 1.1、二进制安装MySQL8 注意系统的环境、比较干净 系统中最好不要出现有mysql的包和mariadbfind / -name mysql/mariadbrpm -e --nodeps(忽略依赖) 安装MySQL8.0.2&#xff0c;安装比较低一点的版本下载一个二进制的包 wget https://dev.mysql.com/get/Downlo…