vxe-table
vxe-table copied to clipboard
引入vxe-table样式的同时引入element-ui的样式会存在内存泄漏
(必填)请填写问题描述或截图: ? 使用vxe-table的同时引入了element-ui的样式会出现内存泄漏 注释掉element的样式或者vxe-table的样式之后内存泄漏消失
打开chrome无痕模式(可以在edge以及chrome无痕模式上重现,在chrome正常模式(装了很多插件)以及firefox上都无法重现) 下面的在线链接在官方示例的基础上,加了切换隐藏显示, tabledata的行数,以及在css中引入了element-ui的样式可以看到随着点击次数的增加,内存逐渐上升,并且无法被回收 (必填)请填在线链接: ? https://jsrun.net/uhTKp/edit (必填)请填写期望的结果: ? table消失之后,组件占用的内存能被回收 (必填)请填写以下信息:
- OS: ? win10 64位
- Browser: ?chrome 版本 93.0.4577.63(正式版本) (64 位) edge 版本 93.0.961.38 (官方内部版本) (64 位) firefox: 版本 91.0.2 (64位)
- vue: ?2.6.12
- vxe-table: ?3.3.12
@fengpang 请问后续解决了吗? 我测试打开5000*5000的表格,多打开几次内存就满了,关闭表格组件也没用,只有刷新页面才能回收内存
@fengpang 请问后续解决了吗? 我测试打开5000*5000的表格,多打开几次内存就满了,关闭表格组件也没用,只有刷新页面才能回收内存 我是把vxe-table.css这个文件拉下来,然后把文件里面的
[class*=vxe-], [class*=vxe-]:after, [class*=vxe-] :after, [class*=vxe-]:before, [class*=vxe-] :before { -webkit-box-sizing: border-box; box-sizing: border-box }
这几行css注释掉就好了
我完全不引用vxe-table的样式文件,只按需引入的table组件,也会有内存无法回收问题,估计原因和你的还不太一样。
另外样式文件为什么会导致内存不能回收呢,知道原因吗?
我完全不引用vxe-table的样式文件,只按需引入的table组件,也会有内存无法回收问题,估计原因和你的还不太一样。 另外样式文件为什么会导致内存不能回收呢,知道原因吗?
不太清楚,可能是blink的bug
我完全不引用vxe-table的样式文件,只按需引入的table组件,也会有内存无法回收问题,估计原因和你的还不太一样。 另外样式文件为什么会导致内存不能回收呢,知道原因吗?
不太清楚,可能是blink的bug
似乎被我解决了,提了个pr: https://github.com/x-extends/xe-utils/pull/43 内存泄漏的原因是throttle这个闭包会缓存最后一次mouse-wheel事件,把dom都给缓存了。
我完全不引用vxe-table的样式文件,只按需引入的table组件,也会有内存无法回收问题,估计原因和你的还不太一样。 另外样式文件为什么会导致内存不能回收呢,知道原因吗?
不太清楚,可能是blink的bug
似乎被我解决了,提了个pr: x-extends/xe-utils#43 内存泄漏的原因是throttle这个闭包会缓存最后一次mouse-wheel事件,把dom都给缓存了。
我在线重现例子里面是可以明显看到把css注释了内存泄漏就没了,你这个可能是别的问题