直观上来看, 前端需要展示的是 当前页的内容, 以及所有的页码数(可以点击)。
那么对前端而言, 需要涉及到的数据就是 , 当前页数pageNum、页的大小pageSize,页的数据list<data>,总页数totalPage。
totalPage = totalData / pageSize, totalData由后台得到, pageSize自定义。
pageNum 由用户指定《--》 前端指定。
list<data> 由后台返回。
综上所述,一种思路: 在前后端分离的架构下, 前端 向后台发送(pageSize, pageNum), 后台返回(totalData、list<data>)...
其中非后台必要数据可以由前端发送、也可以由后台定义(再传给前端)~这个无所谓。
这样的话, 用户第一次进来, 发送(pageSize, 0) ,后台返回数据, 可以拼凑成前端的页面, 用户点击某一页, 后台又接受到数据, 就跳转到下一页。
totalData-> select count() from xxx where ...
list<data> -> select ... from xxx where ... limit ([pageSize-1]pageNum, pageNum)
网友评论