1.展现成果(分页)

2.分页次要字段

分页次要字段包含 pageSize 每页条数、pageNum 第几页、startRow 以后开始页编号、endRow 以后完结页编号、total 总数量。次要是依据前端分页的参数,进行解决后,返回前端正确的数据,其实是一个很常见且简略的性能。然而是十分也是十分重要的。

pageSize 每页条数pageNum  第几页startRow 以后开始页编号endRow 以后完结页编号total 总数量

计算 3.startRow 和 endRow

封装成一个函数

/* 分页公共函数*/module.exports = handlePages = (pageNum, pageSize, total) => {    let startRow = total > 0 ? ((pageNum - 1) * pageSize + 1) : 0;    let endRow = pageNum * pageSize <= total ? pageNum * pageSize : total;    return {        pageNum,        pageSize,        recordCounts:total,        startRow,        endRow    }}

4.接口函数中应用该函数

从前端传参中获取,分页所须要的数据。

 let { nickname, name, role, pageSize, pageNum } = ctx.request.body;  //此处进行解决 let pageNum1 = (pageNum - 1) * pageSize
//获取用户信息列表async getAllUserList(ctx) {   let { nickname, name, role, pageSize, pageNum } = ctx.request.body   let res = []   let pageNum1 = (pageNum - 1) * pageSize   let total = (await User.getAllUserListTotal())[0].recordCounts   if (!nickname && !name && !role) {     res = (await User.getAllUserListNotCond(pageSize, pageNum1))   } else {     res = (await User.getAllUserList(nickname, name, role, pageSize, pageNum1))   }   ctx.body = {     code: 0,     data: res.map(v => {       if (v.password) {         delete v.password       }       return v     }),     //分页所有的参数     ...handlePages(pageNum, pageSize, total)   } }

5.分页中的MySql语句

依据分页查询数据库的数据

//依据分页查问用户列表async getAllUserListNotCond(pageSize, pageNum) {        return await query(`SELECT * FROM user LIMIT ${pageNum},${pageSize}`)}

mySql获取数据库数据总条数

//获取用户信息列表的总条数async getAllUserListTotal() {   return await query(`SELECT COUNT(*) as recordCounts FROM user`)}

对于mySql的COUNT()函数

作用:COUNT() 函数返回匹配指定条件的行数。

SQL COUNT(column_name) 语法

COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):

SELECT COUNT(column_name) FROM table_name

SQL COUNT(*) 语法

COUNT(*) 函数返回表中的记录数:

SELECT COUNT(*) FROM table_name

SQL COUNT(DISTINCT column_name) 语法

COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:

SELECT COUNT(DISTINCT column_name) FROM table_name

6.切换分页的成果

切换分页后的成果 还是很失常的。

7.总结

次要是蕴含mysql的根本应用。目前还在学习当中,有不当的中央,欢送斧正和一起交流学习。目前正在解决权限治理模块。下一篇文章将解说如何进行权限管制,有趣味的能够持续关注。