讲师中心 微信公众号
AI工具推荐 视频效率加速

layui分页怎么处理大数据量卡顿

落明吖_9541

落明吖_9541

发布时间:2026-09-06 08:23:47

|

1004人浏览过

|

来源于php中文网

原创

layui分页卡顿根源在于前端全量加载与冗余渲染,需关闭height未设、limit过大、loading:true三大陷阱,并由后端严格按page/limit分页返回合规数据。

layui分页怎么处理大数据量卡顿

别让 layui 分页扛大数据量——它默认的分页逻辑不是为万级数据设计的,卡顿根源在于前端全量加载、重复渲染和 DOM 膨胀。直接关掉 page: true 并不解决问题,关键得让分页行为与后端对齐、砍掉冗余渲染、避开主线程阻塞。

为什么 layui 分页一到几千条就卡?

常见现象包括:Uncaught RangeError: Maximum call stack size exceeded、滚动时表格“跳帧”、点击下一页白屏 2 秒、CPU 持续 90%+。这不是你数据慢,是 layui 在 page: true 下仍会遍历整个 res.data 做字段映射、格式化、even/odd 样式计算,哪怕只显示 50 条,内部也把全部响应数据过一遍。更糟的是,如果误用 data: [] + page: true,layui 会自己切片,但缓存、排序、搜索都失效,还多占内存。

必须关闭的三个默认陷阱

以下配置不手动关掉,其他优化基本无效:

  • height 必须设为具体数值(如 height: 500),否则虚拟滚动不启用,滚动卡死是必然
  • page 设为 true 的同时,limit 控制在 50–100,别设成 500 —— 后端一次返回太多行,前端拼 HTML 时间翻倍
  • loading: true 禁用,它底层用 setTimeout 插入 loading dom,和真实渲染抢主线程,反而加剧抖动

后端接口必须配合分页参数

前端 url: '/api/list' 发出的请求,必须带 page 和 limit,且后端严格按这两个参数查库、返回对应页数据。不能出现:

人工智能数字技术机器人全息大脑大数据分析矢量素材(EPS)
人工智能数字技术机器人全息大脑大数据分析矢量素材(EPS)

这是一款人工智能数字技术机器人全息大脑大数据分析矢量素材,格式为 EPS,含 JPG 预览图。

下载
  • 前端发 page=2&limit=80,后端却忽略参数,返回全量 1w 行
  • 后端返回的 count 字段不准(比如漏统计软删除数据),导致分页器错乱、跳页失败
  • 接口返回结构不符合 layui 要求:必须是 {"code":0,"msg":"","count":12345,"data":[{...}]},缺 count 或类型不对(如 string)都会让分页器消失或报错

done 回调里接管 tbody 渲染(防闪烁关键)

不要依赖 layui 自动拼 tbody,万级数据下它的内部流程不可控。把实际插入逻辑挪进 done,用 DocumentFragment 批量写入:

table.render({
  elem: '#demo',
  height: 500,
  url: '/api/list',
  page: true,
  limit: 80,
  done: function(res, curr, count) {
    const tbody = this.elem.next('.layui-table-box').find('tbody');
    tbody.empty();
    const frag = document.createDocumentFragment();
    res.data.forEach(row => {
      const tr = document.createElement('tr');
      tr.innerHTML = `<td>${row.id}</td><td>${row.name}</td>`;
      frag.appendChild(tr);
    });
    tbody[0].appendChild(frag);
  }
});

注意:res.data 是当前页纯对象数组,别在里面调 JSON.stringify() 或嵌套循环;如果列多、字段深,提前在后端 flatten 结构,比前端处理快一个数量级。

真正难的不是怎么写完这几十行代码,而是后端是否真能稳定返回符合分页语义的数据——很多卡顿问题最后都定位到数据库没建好索引、count 查询超时、或分页 offset 模式在百万级表上退化。前端能做的边界很清晰:只拿该拿的,只画该画的,别替后端背锅。

热门AI工具

更多
讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

相关专题

更多
python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

2283

2023.08.11

前端如何实现即时通讯
前端如何实现即时通讯

实现即时通讯的方法有WebSocket、Long Polling、Server-Sent Events、WebRTC等等。详细介绍:1、WebSocket,它可以在客户端和服务器之间建立持久连接,实现实时的双向通信,前端可以使用 WebSocket API来创建WebSocket连接,并通过发送和接收消息来实现即时通讯;2、Long Polling,是一种模拟实时通信的技术等等。

4903

2023.10.09

前端和后端的区别
前端和后端的区别

前端关注的是用户界面的设计和交互,而后端则注重数据处理和逻辑控制。想了解更多前端后端的相关内容,可以阅读本专题下面的文章。

5990

2024.03.19

php和前端的关联介绍
php和前端的关联介绍

php既可以作为前端语言,也可以作为后端语言。想了解更多php和前端的相关内容,可以阅读本专题下面的文章。

5498

2024.03.22

前端外包工作内容有哪些
前端外包工作内容有哪些

前端外包工作内容包括:1. 网站和应用程序开发;2. 用户界面和交互设计;3. 用户体验优化;4. 设计和视觉开发;5. 跨浏览器兼容性;6. 性能优化;7. 维护和更新;8. 项目管理和沟通。想了解更多前端的相关内容,可以阅读本专题下面的文章。

783

2024.05.22

大数据分析工具有哪四个
大数据分析工具有哪四个

大数据分析的四个工具分别是rapidminer、Hpcc、Hadoop和Pentaho bi。大数据分析用于从各种来源生成的原始数据中提取有价值的数据。这些数据帮助我们获得有意义的见解、隐藏的模式、未知的相关性、市场趋势等等,具体取决于行业。大数据分析的主要动机是提供有价值的见解,以便为未来做出更好的决策。php中文网为大家带来了大数据分析的相关教程、以及相关文章等内容,供大家免费下载使用。

4556

2023.06.21

Java 大数据处理基础(Hadoop 方向)
Java 大数据处理基础(Hadoop 方向)

本专题聚焦 Java 在大数据离线处理场景中的核心应用,系统讲解 Hadoop 生态的基本原理、HDFS 文件系统操作、MapReduce 编程模型、作业优化策略以及常见数据处理流程。通过实际示例(如日志分析、批处理任务),帮助学习者掌握使用 Java 构建高效大数据处理程序的完整方法。

1229

2025.12.08

大数据专业学习教程
大数据专业学习教程

本专题整合了大数据专业学习相关教程,阅读专题下面的文章了解更多详细内容。

223

2026.01.05

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

80

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
第十三期_前端开发
第十三期_前端开发

共98课时 | 17.6万人学习

第十二期_前端开发
第十二期_前端开发

共98课时 | 20.6万人学习

周末班(第一期)_前端开发
周末班(第一期)_前端开发

共83课时 | 14.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn