若依分页功能探究

目录

前端代码

登录日志页面

 queryparams参数

getlist方法 

 list方法

前端发送请求信息

获取请求信息 

后端代码

controller层代码

startpage的代码 

 TableDataInfo


前端代码

登录日志页面

 

 分页组件

<pagination
      v-show="total>0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />

 queryparams参数

分别为页数和每页最大行数

queryParams: {
        pageNum: 1,
        pageSize: 10,

 

getlist方法 

先调用addDataRange方法对queryparams,datarange进行操作,然后从后端获取的列表数据和total。

getList() {
      this.loading = true;
      listTable(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
          this.tableList = response.rows;
          this.total = response.total;
          this.loading = false;
        }
      );
    },

 list方法

向url:'/monitor/logininfor/list'发送get请求。

import request from '@/utils/request'

// 查询登录日志列表
export function list(query) {
  return request({
    url: '/monitor/logininfor/list',
    method: 'get',
    params: query
  })
}

 函数调用链:getList -> list -> request[axios]

前端发送请求信息

获取请求信息 

 

 

后端代码

controller层代码

 @GetMapping("/list")响应前端的get请求

  startPage();分页前必须执行此方法
  return getDataTable(list);包装返回的参数

@RestController
@RequestMapping("/monitor/logininfor")
public class SysLogininforController extends BaseController
{
    @Autowired
    private ISysLogininforService logininforService;

    @PreAuthorize("@ss.hasPermi('monitor:logininfor:list')")
    @GetMapping("/list")
    public TableDataInfo list(SysLogininfor logininfor)
    {
        startPage();
        List<SysLogininfor> list = logininforService.selectLogininforList(logininfor);
        return getDataTable(list);
    }

startpage的代码 

 protected void startPage()
    {
        PageUtils.startPage();
    }
basecontroller.java



 getPageNum();getPageSize();获得两个参数

public static void startPage()
    {
        PageDomain pageDomain = TableSupport.buildPageRequest();
        Integer pageNum = pageDomain.getPageNum();
        Integer pageSize = pageDomain.getPageSize();
        String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
        Boolean reasonable = pageDomain.getReasonable();
        PageHelper.startPage(pageNum, pageSize, orderBy).setReasonable(reasonable);
    }

 TableDataInfo

@SuppressWarnings({ "rawtypes", "unchecked" })
    protected TableDataInfo getDataTable(List<?> list)
    {
        TableDataInfo rspData = new TableDataInfo();//TableDataInfo rspData包装两个参数
        rspData.setCode(HttpStatus.SUCCESS);
        rspData.setMsg("查询成功");
        rspData.setRows(list);//list为列表数据
        rspData.setTotal(new PageInfo(list).getTotal());//获得总行数
        return rspData;
    }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值