當我切換到選單時,我從 API 獲取資料。當這些資料仍在 DevTools 中輸入 pendig 時,我單擊“過濾器”按鈕并搜索其他資料。我正在尋找的資料出現在我的桌子上。但是當待處理的資料到來時,我搜索的資料就消失了。
我獲取資料的命令列
protected loadData = (params) => {
$.ajax({
method: 'GET',
url: this.tableUrl,
data: params.data,
beforeSend: (request) => {
request.setRequestHeader('Authorization', `Bearer ${this.authService.getToken()}`);
}
}).done((response) => {
params.success(response);
});
}

我上面收到的請求。頂部請求大約需要 40 秒。底部需要 1 秒。它在 1 秒內獲取資料。由于另一個需要 40 秒,因此在 39 秒后 1 秒的資料之上添加其他資料。我需要在過濾時取消說“referenceTumList?PageIndex=0&PageSize=10”的請求。
uj5u.com熱心網友回復:
您可以像這樣取消ajax呼叫
xhrReq: any;
protected loadData = (params) => {
if(this.xhrReq){
this.xhrReq.abort();
}
this.xhrReq = $.ajax({
method: 'GET',
url: this.tableUrl,
data: params.data,
beforeSend: (request) => {
request.setRequestHeader('Authorization', `Bearer ${this.authService.getToken()}`);
}
}).done((response) => {
params.success(response);
});
}
如果你想取消呼叫按鈕點擊
onButtonClick(){
if(this.xhrReq){
this.xhrReq.abort();
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/359820.html
