一般情況下,請求接口時向后台傳遞一些無用的參數可能不影響,但是對於一些傳參檢測比較嚴格的接口進行請求時,對於接口傳遞的參數就會有着嚴格的把控,不允許存在不必要的參數和空值,這時Layui表格重載可能就會因為請求的參數會自動緩存而出現一些無用的參數依然存在的情況,那么對於這種情況的解決方式就是在每次重載表格之前清空緩存,但是這個清除緩存不能在數據渲染完的回調中操作,因為這樣的話雖然是能解決參數緩存的問題,但是如果當前table使用了分頁效果的話,分頁效果就失效了。因為done
是在每次發送完請求之后做的事情,如果每次請求之后清空緩存,就會造成翻頁的時候沒有請求參數了。那么我們的解決方法就是:
vm.whereData['where '] = {};
var data = vm.whereData.where; //清空上次表格重載請求參數,重新賦值
data.name = 'XXX'; //設置本次格重載請求參數
layui.table.reload('tableID', {
where: data,
page: {
curr: 1 // 從第1頁請求
},
done: function(res, curr, count) {
vm.whereData = this; //拿到本次表格重載請求參數
}
})