layui分页如何获取后端返回的所有字段

云芳同学_6328

云芳同学_6328

2026-09-28

775人浏览

原创

layui分页默认只认count和data两个顶层字段,后端其他字段(如code、msg、result.total)需在parsedata中手动提取并返回标准结构,该函数是获取完整响应体的唯一入口。

layui分页如何获取后端返回的所有字段

layui 分页默认只认 count 和 data 两个顶层字段,后端返回的其他字段(比如 code、msg、timestamp 或嵌套的 result.total)不会自动透传到前端逻辑里——你得手动从响应体中捞出来。

parseData 回调是唯一能拿到完整响应的地方

layui 在请求成功后,会把原始响应对象(即整个 JSON body)传给 parseData 函数。这是你接触完整响应体的**唯一入口**,所有字段都从这里解构。

  • 必须显式配置 parseData,否则响应体直接被丢弃,只留下默认提取的 count 和 data
  • parseData 的参数 res 就是后端返回的整个对象,比如 { code: 0, msg: "ok", result: { total: 123, list: [...] } }
  • 函数必须 return 一个对象,且至少包含 count 和 data 字段,否则分页会报错
  • 你可以顺手把其他字段挂到全局变量或闭包里,比如 window.lastResponseCode = res.code

如何安全读取非标准字段(如 code/msg)

别在 done 回调里硬写 res.code——如果没配 parseData,done 的 res 参数其实是被处理过的简化版,只保留了 count 和 data。

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

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

下载
  • 在 parseData 里提前存好你需要的字段:localStorage.setItem('lastMsg', res.msg) 或 self.lastCode = res.code
  • 用可选链避免报错:code: res?.code ?? -1(Layui 2.8+ 支持);老版本写 code: res && res.code !== undefined ? res.code : -1
  • 如果要根据 code 做统一错误拦截,建议在 parseData 开头加判断:if (res.code !== 0) { layer.msg(res.msg || '请求失败'); return { count: 0, data: [] }; }

done 回调里的 res 不等于原始响应体

很多人误以为 done: function(res, curr, count) 中的 res 是后端原样返回的数据,其实不是:它已经被 parseData 处理过,只保留了你 return 出来的字段。想验证?在 parseData 里 return { count: 10, data: [], extra: 'hello' },然后看 done 里的 res 是否有 extra ——没有,因为 layui 内部做了白名单过滤。

  • done 的 res 是「parseData 输出结果」,不是「网络响应体」
  • 真正完整的响应体只存在于 parseData 的入参中,错过就没了
  • 如果你需要在多个地方用到 msg 或 timestamp,必须在 parseData 里一次性提取并缓存,别指望后续回调还能拿到

最常被忽略的一点:parseData 是单次执行的,它不随 reload 或 page 切换重复触发——除非你每次 reload 都传新的 parseData 函数。所以缓存逻辑要写在函数体内,而不是外层作用域里依赖闭包,否则可能拿到旧值。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

layui分页 layui

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

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

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

2023.08.11

2143

5

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

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

2024.03.19

5730

13

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

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

2024.03.19

5026

10

json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

1975

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

2722

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

936

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3059

7

ajax教程
ajax教程

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

2023.06.14

2380

4

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

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

2023.08.31

340

5

热门下载

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

精品课程

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

共87课时 | 12.5万人学习

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

共89课时 | 10.7万人学习

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

共5课时 | 1.6万人学习