首頁  >  文章  >  web前端  >  jquery和vue中的ajax有什麼差別

jquery和vue中的ajax有什麼差別

WBOY
WBOY原創
2022-06-14 11:16:362170瀏覽

區別: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
});

範例:

jquery和vue中的ajax有什麼差別

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數據

jquery和vue中的ajax有什麼差別

是下面的簡寫

jquery和vue中的ajax有什麼差別

#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傳參

         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