作完上個項目,總結下分頁實現方法前端
方法一:
傳參:時間戳(每頁中時間最小的一個,時間戳帶上毫秒)
返回:每頁20條數據
備註:
1.每次返回的20條數據,前端要作緩存。
2.若是最小時間戳有重複數據的話,則拿這個時間戳取的最新20條數據與上一次取的20條數據裏面有重複數據。(重複的數據即爲時間戳相同的數據總體或一部分)
解決重複數據方法
1.前端根據返回的數據中惟一字段進行去重。
2.能不能在後端作緩存?數據庫
方法二:
傳參:頁碼、時間戳(下拉刷新時,返回數據中時間最大的一個)
返回:第一頁20條、第二頁40條(可是能夠截取第20條以後的數據)
備註:這個方法的弊端是數據量大時,先要查出全部的數據再截取須要的20條,影響效率。
另一種思路:設計數據庫表時,每一個數據都有惟一的id(自增id,整型),分頁時,能夠根據這個id來進行分頁。
傳參:數據id(每頁中數據id最大的一個)
益處:每次取回來的數據不會有重複的。
弊端:刪除某些數據後,再查詢數據時,依然不會有重複,目前沒想出有什麼弊端。後端