table.reload()多次调用后表格明显卡顿

提问 已结
7 92
小小怪兽不挨打
悬赏:20飞吻
版本:layui 2.4.5 浏览器:chrome 70.0.3538.77
table.reload()方法多次(大于100次)调用后,界面明显卡顿,行点击事件以及复选框等控件延迟特别大,f5刷新后恢复正常。
回帖
  • 这个也是目前reload存在的一个问题,就是每次都是render没什么区别,每次都会new 一个实例,所以无形中会多出来很多的“垃圾”,也没有一个什么的回收机制,所以一直reload的话会越来越卡,知道over,之前就有小伙伴说业务需要设置了一个定时器,每个几秒刷一次,然后几个小时还是多少之后就over了,实际上每次都只是查询一下新的数据,建议你可以用我的tablePlug进去试试看,只要你的reload的不是一个一直需要重载的,只是查询的话会大大大的降低“垃圾”的产生的。
    0 回复
  • @岁月小偷 大神,刚刚还在看你的tablePlug,感谢指导
    0 回复
  • @小小怪兽不挨打 不客气[微笑] ,实践是检验真理的唯一标准,不妨一试哈
    0 回复
  • @岁月小偷 兄弟你好,我用ajax请回来数据重载table可以用你的插件么,怎么用呢?
    0 回复
  • Smalin
    3天前
    @小小怪兽不挨打
    Layui Table 组件的 Bug 每一次 reload 表格都会给 DOM 绑定点击事件,所以 reload 越多越卡顿。
    具体看下面我得建议链接
    https://fly.layui.com/jie/43925/
    解决办法就是注释那两个事件绑定,只生命一次,然后重新打包 layui
    0 回复
  • @Smalin 原来是这样,感谢大大的分享[good] [good] [good] ,我现在用了@岁月小偷 的tableplus,感觉很好用,因为我的表格是定长的,饮用效果极佳,[嘻嘻]
    0 回复
  • @小小怪兽不挨打 谢谢认可,还会不断的添加功能还有处理一些当前存在的问题,欢迎持续关注哈[嘻嘻]
    0 回复