找回密码
 立即注册

QQ登录

只需一步,快速开始

沉不住的心
中级会员   /  发表于:2021-6-22 20:04  /   查看:4708  /  回复:16
本帖最后由 Richard.Ma 于 2021-8-2 10:07 编辑

image.png753345947.png

16 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-7-8 11:20:55
推荐

这个问题会在14.1.3中修复,目前版本是14.1.2,预计两周左右发布一个小版本。
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-6-23 08:49:48
沙发
您好,我这边测试了一个65M的excel文件,刚开始导入内存占到了3000M左右,但很快释放到了2000M一下,建议您提供能复现问题的表单,这边调研一下。
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 10:14:02
板凳
多次重复导入,不是导入一次,多次重复导入即可
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 10:21:15
地板
用您这边的例子即可复现, 在项目里因为使用react开发,发现退出当前加载spread的路由后,浏览器内存不会清除,退出进去其他spread路由页面,会一直叠加内存,react单页面应用应该是在推图当前页面时组件已经卸载了,我们这边使用大概10m的excel测试出来的 每次会加上大约300m左右,主要是不关闭浏览器会一直叠加,最终结果肯定会导致页面崩溃的,我们这边初步判断是excelio板块可能内部转换的blob或其他格式一直在内存里并无法清除的原因
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-6-23 11:01:20
5#
沉不住的心 发表于 2021-6-23 10:21
用您这边的例子即可复现, 在项目里因为使用react开发,发现退出当前加载spread的路由后,浏览器内存不会清除, ...

我在在线表格编辑器上连续导入测试了5次,仅在导入时内存占用会提高,导入完成后,内存也很快就释放了。导入这里跟很多有关,浏览器内核,表单的内容,机器的性能均有关系。这里其他都不是我们能够管控的地方,我们只能从表单文件内容着手去进行优化。建议您的提供对应的表单文件给我们,我们就具体问题去进行调研。

另外,这边还有一个方案您也可以尝试一下
  1. spread.fromJSON(workbookObj, {
  2.              doNotRecalculateAfterLoad:true,
  3.              //ignoreFormula: true
  4.   });
  5. spread.options.calcOnDemand = true;
复制代码

同时也把增量加载打开
https://demo.grapecity.com.cn/sp ... ntal-loading/purejs
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 11:05:35
6#
请问您测试的时候是导入完成以后立刻继续导入吗,我们在项目中是启用了增量加载和doNotRecalculateAfterLoad:true的
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 11:27:44
7#
image.png772863158.png
image.png313362731.png
image.png792440795.png
这是等待了多一次导入,并等待两分钟后的内存截图
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-6-23 11:33:12
8#
沉不住的心 发表于 2021-6-23 11:27
这是等待了多一次导入,并等待两分钟后的内存截图

这边也测试了一下确实保存了内存的占用,请问您的具体需求是什么呢?为什么需要同一个页面重复导入多个文件呢?
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 11:53:24
9#
就跟我上面说的一样,基于react将spread集成进去,所以可能不可避免的会有页面切换的问题,,并且可能需要不切换组件,而同时打开多个spread的使用场景,这个内存叠加问题也是我们在测试中发现的,我们也找了挺久的所以只能定位到excelopen的时候,转化后的blob会一直占用内存,所以问下您这边有没有碰到过,或者有无解决办法,因为需要追求速度,所以spread我们只是用来做数据展示不进行计算功能,这也是之前我有问过能否全部取消spread的计算功能的原因.
回复 使用道具 举报
沉不住的心
中级会员   /  发表于:2021-6-23 11:56:44
10#
不是同一个页面导入多个文件,只是用您这边的在线编辑excel里面,多次导入可以复现我们项目内的内存叠加问题,所以我们发现并不是我们代码的原因,因为这种内存叠加情况我们也都没有碰到过,
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部