1. 程式人生 > >MUI封裝的ajax請求

MUI封裝的ajax請求

今天除錯體測bug,發現ts裡有一點axaj的程式碼,好奇為什麼用這個,於是上網查一查,大概瞭解了一下.

因為我們前端用了MUI的框架,但是MUI框架基於htm5plus的XMLHttpRequest,封裝了常用的Ajax函式,支援GET,POST的請求方式,支援返回json,xml,html,script資料型別;

MUI 提供了mui.ajax方法,並在mui.ajax方法基礎上,進一步簡化出最常用的mui.get(),mui.getJSON(),mui.post()三個方法;

 

引數解析:

url       Type: String  請求傳送的目標地址

async     Type: Boolean 傳送同步請求

data      {xx:xx,xxx:xxx} 傳送到伺服器的業務資料

dataType  "xml": 返回XML文件,"html": 返回純文字HTML資訊;,"script": 返回純文字JavaScript程式碼,"json": 返回JSON資料,"text": 返回純文字字串

error     請求失敗時觸發的回撥函式,該函式接收三個引數: (xhr:xhr例項物件,type:錯誤描述,可取值:"timeout", "error", "abort", "parsererror"、"null",errorThrown:可捕獲的異常物件)

success   請求成功時觸發的回撥函式,該函式接收三個引數:(data:伺服器返回的響應資料,型別可以是json物件、xml物件、字串等;,textStatus:狀態描述,預設值為'success', xhr:xhr例項物件)

timeout   請求超時時間(毫秒),預設值為0,表示永不超時;若超過設定的超時時間(非0的情況),依然未收到伺服器響應,則觸發error回撥

type      請求方式,目前僅支援'GET'和'POST',預設為'GET'方式

headers   指定HTTP請求的Header;

//由於mui具有自己的封裝性,所以不能用http直接傳,而是採用Ajax非同步傳輸
const body = JSON.stringify(item)
$.ajax({
url: 'http://localhost:8081/physical-web/singlePoject/SaveStudentProjectScore/' + batchNo,
data: body,
type: 'POST',
dataType: "JSON",
contentType: "application/json;charset=UTF-8",
error: function () {
this.msgs = [];
this.msgs.push({ severity: 'error', summary: '提示', detail: '請求資源失敗' });
},
success: function (data) { //提示缺考成功
console.log(data);
mui.toast(studentname + '儲存缺考成功');
document.getElementById("btnSaveAbsentStudent").setAttribute("disabled", "disabled");
item.originalResult = "";
}
})

連結:

https://www.cnblogs.com/lidelin/p/7008876.html

https://blog.csdn.net/faremax/article/details/64127395