prefacio
在前端开发过程中,Table分页、列表分页等等需求特别常见,笔者在最近开发过程中遇到当非第一页进行搜索、删除最后一条数据报错问题,因而再次做个记录,以供大家参考
escena empresarial
1. El backend muestra un mensaje de error cuando la búsqueda global no está en la primera página.
Haz una búsqueda global en la segunda página.
Abra el controlador del navegador para verificar y descubra que el número de página, el número de página y el contenido de búsqueda se pasan al backend.
Razón Los datos devueltos por el backend no son suficientes para admitir el número de página actual y el número de páginas.
Solución
Cuando la interfaz activa un evento de búsqueda, restablece el número de página a 1 de forma predeterminada
const getSearchVal = debounce(async (value) => {
reqParam.value.search = value
reqParam.value.page = 1 //在非第一页搜索时 返回内容默认第一页
const {
results, count } = await getList(reqParam.value)
tableData.value = results
pagination.value.total = count
pagination.value.current = reqParam.value.page
}, 200)
2. Al eliminar el último dato en la página que no es la primera, aparece un mensaje de error en el backend
Solución
Al eliminar el último dato que no es la primera página, el número de página debe reducirse en una página o ser la primera página.
pagination.value.page = pagination.value.page - 1 || 1