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

Layui表格数据加载慢如何优化

浅瑶吖_2005

浅瑶吖_2005

发布时间:2026-06-04 10:16:37

|

701人浏览过

|

来源于php中文网

原创

Layui表格卡顿的根本原因是前端分页模式下全量数据渲染DOM,解决方案必须启用服务端分页:后端按page/limit查询并返回count和data,前端配置page:true及正确request/response映射。

为什么 layui.table.render() 渲染上千行数据会卡顿

不是 layui 本身写得烂,是它默认把全部数据塞进 dom 渲染——哪怕你只看前 20 行,它也把 1000 行全转成 <tr><td>...</td></tr> 插进去。浏览器重排重绘压力直接拉满,滚动卡、搜索卡、甚至点个复选框都延迟。

关键矛盾在于:Layui 的「前端分页」模式(page: false 或 page: { limit: 1000 })本质是假分页,数据没切,只是靠 CSS 隐藏了后面的部分。

  • 真实场景中,只要原始数据超过 500 行,且未开启服务端分页,基本就会肉眼可见卡顿
  • 表格启用了 checkbox 或 radio 列时,性能衰减更明显——每行多挂一个事件监听器
  • templet 函数里做复杂计算(比如时间格式化、条件拼接字符串)会进一步拖慢渲染

必须开服务端分页,且后端要支持 limit 和 offset

Layui 表格真正的性能解法只有一条路:让后端每次只返回当前页的数据,而不是把全量数据一次性吐给前端。前端传 page 和 limit,后端按需查库,别偷懒用 SELECT * FROM xxx 再 JS 里 slice。

  • 前端配置里必须设 page: true,并确保 request 对象里 pageName 和 limitName 与后端约定一致(常见是 page 和 limit)
  • 后端接口返回结构必须含 count 字段(总条数),否则 Layui 分页栏不显示页码
  • 别信“我后端内存里有缓存,查全量很快”——快也没用,Layui 还是要把所有数据 render 成 DOM

示例请求参数:?page=2&limit=30;后端响应:{"code":0,"msg":"","count":1247,"data":[{...},{...}]}

cellMinWidth 和 minWidth 设太小会加剧重绘抖动

当列宽被设得过窄(比如 minWidth: 50),Layui 会在 resize 或滚动时频繁触发宽度重算,尤其在高 DPI 屏或缩放非 100% 时,DOM 尺寸反复微调,引发 layout thrashing。

深蓝色网站后台管理系统layui框架模板-AdminPro
深蓝色网站后台管理系统layui框架模板-AdminPro

一款深蓝色网站后台管理系统layui框架模板

下载
  • 建议所有列显式设置 minWidth ≥ 80,文字类列可设 120,操作列设 160
  • 禁用 cellMinWidth(默认为 60),它会让每单元格单独计算最小宽,开销翻倍
  • 如果列内容长短差异大,优先用 templet 控制内容截断(如 return d.title?.substring(0,20)+'...'),而不是依赖自动换行撑高行高

禁用不必要的功能能省下 30%+ 渲染时间

很多项目开着 toolbar、totalRow、defaultToolbar 却根本不用,这些组件初始化时都要遍历所有数据做聚合或生成按钮,纯属白耗 CPU。

  • 确认不用工具栏就删掉 toolbar 配置项,别留空字符串或 true
  • totalRow: true 会遍历整页数据求和/计数,若后端已返回统计值,前端别重复算
  • defaultToolbar 默认带「导出」「打印」等按钮,但实际项目常屏蔽导出权限,却还保留配置,照样触发初始化逻辑
  • 如果不需要排序,把每列的 sort: true 全干掉;排序图标渲染和事件绑定也是开销

一个真实案例:关掉 totalRow + 去掉两列 sort + 清空 defaultToolbar,1200 行数据首屏渲染从 1.8s 降到 1.1s。

最麻烦的其实是后端没按规范返回分页参数,或者前端漏配 response 映射,导致 Layui 拿不到 count 就退化成前端分页——这种隐性退化最难排查。

热门AI工具

更多
Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

DeepSeek

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

WorkBuddy

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

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

Laper
Laper Hot

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

豆包大模型

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

二狗PPT
二狗PPT Hot

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

相关专题

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

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

2543

2023.08.11

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

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

5503

2023.10.09

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

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

6530

2024.03.19

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

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

6158

2024.03.22

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

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

883

2024.05.22

ajax教程
ajax教程

php中文网为大家带来ajax教程合集,Ajax是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。php中文网还为大家带来ajax的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

2900

2023.06.14

ajax中文乱码解决方法
ajax中文乱码解决方法

ajax中文乱码解决方法有设置请求头部的字符编码、在服务器端设置响应头部的字符编码和使用encodeURIComponent对中文进行编码。本专题为大家提供ajax中文乱码相关的文章、下载、课程内容,供大家免费下载体验。

360

2023.08.31

ajax传递中文乱码怎么办
ajax传递中文乱码怎么办

ajax传递中文乱码的解决办法:1、设置统一的编码方式;2、服务器端编码;3、客户端解码;4、设置HTTP响应头;5、使用JSON格式。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2733

2023.11.15

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

60

2026.10.16

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ThinkPHP配置开发与CMS后台实战
ThinkPHP配置开发与CMS后台实战

共87课时 | 12.9万人学习

第二十三期_综合实战
第二十三期_综合实战

共89课时 | 11.2万人学习

Layui 快速入门精讲
Layui 快速入门精讲

共5课时 | 1.6万人学习

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

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