首页  >  文章  >  web前端  >  jquery和vue中的ajax有什么区别

jquery和vue中的ajax有什么区别

WBOY
WBOY原创
2022-06-14 11:16:362257浏览

区别:1、jquery中的ajax方法可以直接调用,而vue中不可以直接调用,因为vue本身不支持ajax请求,需要借助指定的插件才能实现;2、jquery中执行异步HTTP请求,语法为“$.ajax({type:...,url:...,data:...,success:...,dataType:...})”,而vue中借助插件的语法为“axios.get(url...)”。

jquery和vue中的ajax有什么区别

本教程操作环境:windows10系统、jquery3.4.1版本、Dell G3电脑。

jquery和vue中的ajax有什么区别

jQuery中的ajax

ajax() 方法用于执行 AJAX(异步 HTTP)请求。

1.$.ajax()是jQuery中底层ajax实现,更高层的是$.get和$.post方法;

$(document).ready(function(){
  $("#b01").click(function(){
  htmlobj=$.ajax({url:"/jquery/test1.txt",async:false});
  $("#myDiv").html(htmlobj.responseText);
  });
});

2.$.get方法,请求成功时的操作,如果想有请求失败时的操作,要使用$.ajax()

$(selector).get(url,data,success(response,status,xhr),dataType)
$("button").click(function(){
  $.get("demo_ajax_load.txt", function(result){
    $("div").html(result);
  });
});

是$.ajax的简写

$.ajax({
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

例子:

11.png

3.$.post方法

$("input").keyup(function(){
  txt=$("input").val();
  $.post("demo_ajax_gethint.asp",{suggest:txt},function(result){
    $("span").html(result);
  });
});

是下面的简写

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

4.$.getJSON()

通过HTTP get请求获得json数据

12.png

是下面的简写

13.png

5.两个重要的方法

.serialize()   将表单内容序列化为字符串;

.serializeArray()  序列化表单元素,返回JSON数据结构数据。

VUE中的Ajax

vue本身不支持ajax请求,需要借助vue-resource,axios插件

vue2官方推荐axios,是一个基于Promise的HTTP请求客户端,不再对vue-resource进行维护和更新;

axios([options])  
axios.get(url[,options]);

    传参方式:

        1.通过url传参

        2.通过params选项传参

axios.post(url,data,[options]);

    axios默认发送数据时,数据格式是Request Payload,并非我们常用的Form Data格式,

    所以参数必须要以键值对形式传递,不能以json形式传参

    传参方式:

        1.自己拼接为键值对

        2.使用transformRequest,在请求发送前将请求数据进行转换

        3.如果使用模块化开发,可以使用qs模块进行转换

axios本身并不支持发送跨域的请求,没有提供相应的API,作者也暂没计划在axios添加支持发送跨域请求,所以只能使用第三方库

视频教程推荐:jQuery视频教程

以上是jquery和vue中的ajax有什么区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn