本系列《历史代码分析》为工作中遇到具有代表性的代码。今天我们讲一下,动态展示列表的列,因为找不到代码了,所有本篇用图展示。
举个栗子
我们希望能够动态的控制列表的列,例如,英语老师只想知道自己学科的学生成绩,那可以把其它的成绩的列隐藏掉,如下:
上面的功能,我们应该如何实现,其实最简单的方式,就是记录每个老师她们要显示的列,保存到数据库中,如下
后端可以在每个老师登录时,获得到她们要显示的列,前端需要控制哪个列名显示,但是这种方法,需要前端判断,前端百分百不愿意做判断,
所以呢,当前是我们后端把所有数据都过滤好,组成合适的数据返回给前端,类似如下
[ {"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格式,如下:
{"id": 1,"name": 1,"age": 1,"chinese": 0,"english": 1...
}
如果需要记录列的顺序,则需要用新的一张表,来记录每个老师设置的顺序,不吹了,基本上功能都是这样子,其实不管怎么样,前端都需要做判断,下次聊。