如何快速实现table固定第一行

固定列这个需求在项目中经常遇到,但是固定行这个需求还是大姑娘上轿 —— 头一回。

关于vxe-table这个插件就不过多介绍了,感兴趣的可以自行搜索。

刚开始看到这个需求的时候,第一想法是插件文档上有没有类似于和固定列一样设置个fixed参数就能解决问题,翻开文档一看,果然,没有这个属性。

怎么办呢?撸起袖子自己干。

在查阅相关资料的时候发现可以通过css能把首行固定,狂喜。。。原来这么简单。赶紧把代码加上,果然,首行固定住了。

代码如下:

position: sticky;
top: 0 ;
z-index: 1 ;

  

还没高兴几秒钟,表格一滚动,发现首行的数据会被莫名的替换掉。

经过一番折腾之后,终于发现数据为什么会被替换。原因是使用vxe-table的时候开启了虚拟滚动。把虚拟滚动关了就可以真正实现固定首行了。

关掉虚拟滚动之后,随即而来的问题就是,如果数据量很大的时候,表格性能可能就会受到影响。

总结:使用vxe-table想要实现固定首行,只需要关闭虚拟滚动,再加上上面的三行css代码就可以,当然其他的table组件用上面的代码也是生效的,前提是在不会有虚拟滚动的前提下。(不是最优方案)。

 

posted @ 2023-04-20 16:34  闯入码途的水产人  阅读(525)  评论(0编辑  收藏  举报