首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >《历史代码分析》5、动态控制列表的列

《历史代码分析》5、动态控制列表的列

作者头像
小码农薛尧
发布2025-03-13 21:46:25
发布2025-03-13 21:46:25
3740
举报
文章被收录于专栏:小码农薛尧小码农薛尧

本系列《历史代码分析》为工作中遇到具有代表性的代码。今天我们讲一下,动态展示列表的列,因为找不到代码了,所有本篇用图展示。

举个栗子

20250305024030239087.png
20250305024030239087.png

我们希望能够动态的控制列表的列,例如,英语老师只想知道自己学科的学生成绩,那可以把其它的成绩的列隐藏掉,如下:

20250305024124661210.png
20250305024124661210.png

上面的功能,我们应该如何实现,其实最简单的方式,就是记录每个老师她们要显示的列,保存到数据库中,如下

20250305024905460627.png
20250305024905460627.png

后端可以在每个老师登录时,获得到她们要显示的列,前端需要控制哪个列名显示,但是这种方法,需要前端判断,前端百分百不愿意做判断,

20250305030001567034.gif
20250305030001567034.gif

所以呢,当前是我们后端把所有数据都过滤好,组成合适的数据返回给前端,类似如下

代码语言:javascript
复制
[ 
 {
  "id": 1,
  "name": "小明",
  "age": 15,
  "english": 56,
 },
 {
  "id": 2,
  "name": "小李",
  "age": 14,
  "english": 31,
 },
 {
  "id": 3,
  "name": "小华",
  "age": 16,
  "english": 20,
 },
 {
  "id": 4,
  "name": "小丽",
  "age": 14,
  "english": 0,
 }
]

上面的操作考虑到前端,下面继续瞎说,

前面是把老师需要显示的列保存到数据库中,我们也可以把所有的列都保存到字段中,如果该列显示用1表示,不显示用0表示,保存到字段的内容用JSON格式,如下:

代码语言:javascript
复制
{
 "id": 1,
 "name": 1,
 "age": 1,
    "chinese": 0,
 "english": 1
    ...
}

如果需要记录列的顺序,则需要用新的一张表,来记录每个老师设置的顺序,不吹了,基本上功能都是这样子,其实不管怎么样,前端都需要做判断,下次聊。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小码农薛尧 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档