Layui数据表格如何处理后端返回的非0状态码

风静吖_3652

风静吖_3652

2026-04-29

170人浏览

原创

Layui表格要求后端返回code=0才视为成功,若返回200或"success"等需通过response.statusCode或parseData手动映射为0,并确保返回对象完整包含code、msg、count、data四字段,缺一则表格空白。

后端返回 code=200 或 success=true 时表格不渲染

layui 默认只认 res.code === 0 为成功,遇到 200、"success"、true 等状态值,直接跳过数据解析,表格空白且无报错。这不是 bug,是硬编码逻辑。

别在后端强行改状态码——很多项目已约定死 HTTP 200 + JSON body,改接口成本高、影响广。

  • response.statusCode 可直接接管“什么算成功”,支持数字(如 200)或布尔(如 true)
  • 字段名不叫 code?用 response.statusName 指定,比如后端用 status 或 success
  • 如果后端用 success: true,statusCode 必须设为 true,不能写字符串 "true"

parseData 里手动映射 status 字段却仍失败

写了 parseData 却还是没数据?常见原因是:你只改了 code 字段的值,但没补全 Layui 强依赖的其他字段,比如 count 和 data。

parseData 不是“微调”,是完全替换解析逻辑——它返回的对象必须包含 code、msg、count、data 四个键,缺一不可。

  • 后端没返回总数?别留空:count: res.total ?? res.list?.length ?? 0
  • 数据在 res.payload?.items 里?别写 res.items,要用可选链防崩溃
  • 返回的是纯数组(如 [{id:1}])?必须包成对象:{ code: 0, msg: '', count: res.length, data: res }

response 和 parseData 能不能一起用

能,而且推荐一起用:用 response 解决“是否成功”的判断,用 parseData 解决“结构不对”的问题。两者职责不重叠,也不冲突。

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

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

下载

典型组合场景:后端返回 {"status": 200, "hint": "ok", "total": 42, "rows": [...]}

  • response: { statusName: 'status', statusCode: 200, msgName: 'hint', countName: 'total', dataName: 'rows' }
  • parseData 可省略——因为字段名已对齐;但如果后端 rows 是嵌套在 data 里的,仍需 parseData 拆一层
  • 注意:response 只改字段名和成功判定,不改结构层级;深层嵌套必须靠 parseData

为什么 console.log(res) 看起来正常,但 data 还是 undefined

因为 Layui 在进入 parseData 前,会先按默认规则尝试读取 res.data 和 res.count。如果这两个字段不存在,它不会报错,而是静默设为 undefined,再把 undefined 传给 parseData 的参数 res。

所以你在 parseData 里看到的 res,可能已经是被 Layui “处理过”的半残对象,不是原始响应。

  • 验证方式:在 beforeSend 或用浏览器 Network 面板看原始响应体
  • 真正可靠的入口只有两个:response(改字段名/状态码)和 parseData(彻底重写返回结构)
  • 别在 parseData 里做异步操作,它必须同步返回完整结构,否则表格卡在 loading

相关专题

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

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

2023.08.11

2443

5

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

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

2024.03.19

6310

13

后端的主要工作内容介绍
后端的主要工作内容介绍

后端是应用程序的服务端部分,负责核心任务,如数据库交互、业务逻辑处理和响应客户端请求。想了解更多后端的相关内容,可以阅读本专题下面的文章。

2024.03.19

5706

10

python是前端还是后端
python是前端还是后端

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

2023.08.11

2443

5

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

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

2023.10.09

5263

6

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

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

2024.03.19

6310

13

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

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

2024.03.22

5898

10

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

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

2024.05.22

843

5

ajax教程
ajax教程

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

2023.06.14

2760

4

热门下载

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

精品课程

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

共87课时 | 12.9万人学习

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

共89课时 | 11.1万人学习

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

共5课时 | 1.6万人学习