分页查询前后端代码

一、前端

在table表格下,写样式

复制代码
 <div style="margin: 10px 0">
      <el-pagination
          @current-change="handleCurrentChange"
          :current-page="pageNum"
          :page-sizes="[100, 200, 300, 400]"
          :page-size="pageSize"
          layout="total, prev, pager, next"
          :total="total">
      </el-pagination>
    </div>

默认值,第一次查询没有页码和页面大小所以给个默认值,因为我有帐号和姓名的模糊查询所以,后端会根据这四个值来返回前端所需要的数据

复制代码
pageNum:1,
        pageSize:5,
        username: "",
        name: "" ,
        total: 0,

页面第一次自动渲染

复制代码
 created() {
        this.load()
  },

每次改变页码或者页号,发送一次请求。

复制代码
handleCurrentChange(pageNum){
        
        this.load(pageNum)
    },

发送请求的代码

复制代码
load(pageNum){
       if(pageNum){ this.pageNum =pageNum}

        this.$request.get('/user/selectByPage',{
            params:{
                pageNum:this.pageNum,
                pageSize: this.pageSize,
                username: this.username,
                name: this.name
            }
        }).then(res =>{
            this.tableData = res.data.records
            this.total =res.data.total
        
        })
    },

二、后端

复制代码
/**
     * 分页查询
     * @param pageNum
     * @param pageSize
     * @param username
     * @param name
     * @return
     */
    @GetMapping("/selectByPage")
    public Result selectByPage( @RequestParam Integer pageNum,
                               @RequestParam Integer pageSize,
                                @RequestParam String username,
                                @RequestParam String name) {
        QueryWrapper<User> queryWrapper = new QueryWrapper<User>().orderByDesc("id");
        queryWrapper.like(StrUtil.isNotBlank(username), "username", username);
        queryWrapper.like(StrUtil.isNotBlank(name), "name", name);
        Page<User> page = userService.page(new Page<>(pageNum, pageSize), queryWrapper);
        return Result.success(page);
    }
相关推荐
TeleostNaCl1 小时前
解决 Chrome 无法访问网页但无痕模式下可以访问该网页 的问题
前端·网络·chrome·windows·经验分享
前端大卫3 小时前
为什么 React 中的 key 不能用索引?
前端
你的人类朋友3 小时前
【Node】手动归还主线程控制权:解决 Node.js 阻塞的一个思路
前端·后端·node.js
小李小李不讲道理5 小时前
「Ant Design 组件库探索」五:Tabs组件
前端·react.js·ant design
毕设十刻5 小时前
基于Vue的学分预警系统98k51(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
mapbar_front6 小时前
在职场生存中如何做个不好惹的人
前端
牧杉-惊蛰6 小时前
纯flex布局来写瀑布流
前端·javascript·css
一袋米扛几楼987 小时前
【软件安全】什么是XSS(Cross-Site Scripting,跨站脚本)?
前端·安全·xss
向上的车轮7 小时前
Actix Web适合什么类型的Web应用?可以部署 Java 或 .NET 的应用程序?
java·前端·rust·.net
XiaoYu20027 小时前
第1章 核心竞争力和职业规划
前端·面试·程序员