找回密码
 立即注册

QQ登录

只需一步,快速开始

Yu-Xian

注册会员

9

主题

46

帖子

187

积分

注册会员

积分
187
Yu-Xian
注册会员   /  发表于:2023-2-18 15:18  /   查看:3468  /  回复:21
本帖最后由 Lynn.Dou 于 2023-3-14 11:41 编辑

目前上传档案约为49MB,

利用JSON.stringify(spread.toJSON())转为字串后传输制后台,
但会造成chrome反馈 錯誤代碼:STATUS_BREAKPOINT。

image.png118311461.png

如改以spread.toJSON()转为JSON后传输制后台,
仍会造成chrome反馈 錯誤代碼:Out of Memory。

image.png43717040.png

1. 请问49MB是否为官方认定过大文件?
2. 请问是否有官方提供字串压缩方法或是相关处理流程?

21 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-2-20 10:33:06
沙发
这个应该是内容过大导致,SpreadJS本身对此没有限制,应该是触发了浏览器本身的前端瓶颈。
可以考虑把tojson的结果通过Gzip之类的压缩工具进行压缩后传输。
或者考虑使用SpreadJSV16的新功能,以.sjs的文件格式进行传输代替.ssjson。目前V16已有体验版发布:
https://gcdn.grapecity.com.cn/fo ... &extra=page%3D1
回复 使用道具 举报
Yu-Xian
注册会员   /  发表于:2023-3-3 11:08:14
板凳
目前已下载V16于本机进行测试,
但在执行import时发生以下问题

1e8913f0986e055ba6e31d59d3ff374.png905858154.png
0b52e4591fc703e1c12adc9f1bcfea2.png767968749.png

import 代码
745a3638c7476c4432f6be628d7ac34.png789359130.png

已加载gc.spread.sheets.io.min.js
b92658893eaac9fdda01e228de0c904.png264479064.png
回复 使用道具 举报
Yu-Xian
注册会员   /  发表于:2023-3-3 11:37:09
地板
Clark.Pan 发表于 2023-2-20 10:33
这个应该是内容过大导致,SpreadJS本身对此没有限制,应该是触发了浏览器本身的前端瓶颈。
可以考虑把tojs ...

目前已下载V16于本机进行测试,
但在执行import时发生以下问题

https://gcdn.grapecity.com.cn/da ... kbgeojgpbzmrdyd.png

https://gcdn.grapecity.com.cn/da ... j1sj1p1di1uu8ep.png

import 代码
https://gcdn.grapecity.com.cn/da ... fldwd3evdv1fg3v.png

已加载gc.spread.sheets.io.min.js
https://gcdn.grapecity.com.cn/da ... 6arzkr1k31dkpad.png
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-3 11:54:48
5#
上面写的spread.import is not function 说明spread对象下没有import方法。但是正常情况下只要加载了gc.spread.sheets.io.min.js。spread对象下就会有import方法,所以目前怀疑是这个问题没有完全加载,您可以排查一下。另外,如果想真正完全排查此问题,请您提供一个能够重现问题的demo,我们来做详细排查。
回复 使用道具 举报
Yu-Xian
注册会员   /  发表于:2023-3-6 15:32:54
6#
Clark.Pan 发表于 2023-3-3 11:54
上面写的spread.import is not function 说明spread对象下没有import方法。但是正常情况下只要加载了gc.spr ...

上述import方法问题已解决,
想另外请教sjs文件如何进行前后台资料传递?
是否有范例可供参考?

我们先前json的实作方法如下
1. 储存方法(利用spread.toJSON取得json,再将json转为字串传至后台)

1678087636510.jpg631015929.png


2. 查询方法(将后台查询出文件资讯传至前台并转为json,再利用spread.fromJSON呈现)
image.png954983520.png
1e8913f0986e055ba6e31d59d3ff374.png500014953.png
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-6 16:20:56
7#
你上面用的并不是.sjs文件啊,看你的代码用的还是老的ssjson
回复 使用道具 举报
Yu-Xian
注册会员   /  发表于:2023-3-6 16:53:11
8#
Clark.Pan 发表于 2023-3-6 16:20
你上面用的并不是.sjs文件啊,看你的代码用的还是老的ssjson

我下面的说明是先前V15用ssjson的作法,我想请教如何在V16用.sjs文件做到同样的功能?
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-6 17:05:31
9#
两种格式是不一样,ssjson是一个json对象,可以转换成json字符串。而sjs与导出Excel文件类似,是一个blob流。你可以将blob流传至后端,让后端解析并存储。具体方式网上有很多种,您可以在网上搜一下,找一个最适合您的方式使用。
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2023-3-7 15:21:32
10#
Yu-Xian 发表于 2023-3-6 16:53
我下面的说明是先前V15用ssjson的作法,我想请教如何在V16用.sjs文件做到同样的功能?

您看下此篇文章是否对您有帮助
https://gcdn.grapecity.com.cn/fo ... mp;extra=#pid616304
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部