一、问题描述:
今天在使用elementui plus的时候遇到了一个奇葩的问题, 就是提示 使用了一些已被废弃的用法, 奇葩就在于我是 复制另一个页面的分页, 一摸一样的东西,就只这个页面报错, 分页也不出
为了这个问题, 我是查了官方, 也百度, 折腾了很久,
分页里面的属性,也是一个一个的删了,试了很多次还是有问题, 真的是头大。
二、问题所在:
因为后端没有返回 total,导致给 分页组件 total 不是一个数字 (undefined)
因为后端是我用 node 写的, 当时写的时候 AI 提示直接写完了,如下图一直按tab即可, 检查了一下也没有什么问题, 就偏偏少返回了 total, 所以导致了前端拿不到 total
三、解决办法:
自然后端返回的数据中加上 total 即可‘
// 日志列表
router.get('/log/list', (req, res) => {
const { page, size, city, username } = req.query;
let offset = (page - 1) * size;
const sql = `SELECT *, (SELECT COUNT(id) FROM logs) AS total FROM logs WHERE 1=1 ${city ? `AND city LIKE '%${city}%'` : ''} ${
username ? `AND username LIKE '%${username}%'` : ''
} ORDER BY id DESC LIMIT ${size} OFFSET ${offset}`;
db.queryAsync(sql, []).then(logRes => {
res.send({
code: 200,
data: logRes.results,
msg: 'success',
total: logRes.results[0].total // 返回total
});
});
});