vue TABLE分页数据展示问题

我根据2搜索,会有很多页。
clipboard.png

clipboard.png
然后我在搜索条件中改成22,没有点击搜索,然后去点分页的...,此时因为分页触发搜索,此时,返回结果如最后两张图,其实是有2页的,但是我的...请求的页数是6。。这个该怎么处理呢?

clipboard.png

clipboard.png
请求参数

clipboard.png

clipboard.png
clipboard.png

阅读 6.4k
7 个回答

两种方法。
1.查询表单写两个,第一个和页面上的搜索值绑定,另一个在点击查询按钮时把第一个表单的值带进去传给后台。
2.手动计算当前页,如果根据查询结果计算出来的当前页不等于实际当前页,那么以实际当前页为参数再去请求一次接口

这应该是你传数据的问题,或者是后台返回的问题或者是分页和传参之间绑定的问题!
你把你传的请求参数贴一下,

如果你只是点分页,显示的问题,后台查询没问题的话,
bug原因是你查的第六页数据为空,页面就会无数据,而分页绑定的时后台穿过来的最大数则显示第2页。
解决方法:你可以把搜索和分页切换的时候把这个分页dom注销掉,在查到数据的时候建一个新的dom,这样就保证了数据没问题也不会沿用之间的。
我之前写的博客,解决这个类似问题的,你可以参考一下 有帮助的话,记得帮我点个赞~

给你的输入框加blur事件,失焦就搜索

大概明白你什么意思了,你根据2搜索会出来很多数据,分页也就比较多,你输入22后搜索出来的数据很少,此时你点之前的页数6,因为根据22搜索出来的数据是少于6页的,就造成了返回没有数据,此时需要后端去做些处理,如果查询的页数大于实际数据的页数的话,返回数据可以返回第一页的数据,pageNum也就是1

传数据的问题,改完参数后,page和pagenumber还是以前的数据,

每次点击搜素的时候把分页参数pageNum置为1就可以了,点分页的时候pageNum取分页数据就好

================================正确答案=============================
现在的做法是,后端处理。如果过前端传入的当前页码,比总的页码大的话,后端再去请求一次数据库(按第一页请求)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题