找回密码
 立即注册

QQ登录

只需一步,快速开始

whalefall

注册会员

2

主题

6

帖子

18

积分

注册会员

积分
18
  • 62

    金币

  • 2

    主题

  • 6

    帖子

最新发帖
whalefall
注册会员   /  发表于:2022-5-19 17:41  /   查看:1188  /  回复:5
本帖最后由 whalefall 于 2022-6-16 09:18 编辑
  1.         var designer = GC.Spread.Sheets.Designer;
  2.         var spread = designer.wrapper.spread;var data = '{"version":"11.1.0","sheets":{"Sheet1":{"name":"Sheet1","options":{"isProtected":true},"rowCount":2,"columnCount":21,"activeRow":2,"activeCol":1,"theme":"Office","data":{"dataTable":{"1":{"1":{"value":123123}}},"defaultDataNode":{"style":{"themeFont":"Body"}}},"rowHeaderData":{"defaultDataNode":{"style":{"themeFont":"Body"}}},"colHeaderData":{"defaultDataNode":{"style":{"themeFont":"Body"}}},"rows":[{"size":1}],"columns":[{"size":1}],"selections":{"0":{"row":2,"rowCount":199,"col":1,"colCount":18},"length":1},"index":0}}}';
  3. spread.fromJSON(JSON.parse(data));
  4.     var options = sheet.options;
  5.     spread.options.showVerticalScrollbar = false;
  6.     spread.options.showHorizontalScrollbar = false;
  7.     spread.options.tabStripVisible = false;
  8.     spread.options.hideSelection = true;
  9.     spread.options.scrollbarMaxAlign = true;
  10.     spread.options.scrollbarShowMax = true;
  11.     sheet.options.rowHeaderVisible = false;
  12.     sheet.options.colHeaderVisible = false;
  13.     options.protectionOptions = {
  14.         allowSelectLockedCells: false,
  15.         allowSelectUnlockedCells: false,
  16.         allowFilter: false,
  17.         allowSort: false,
  18.         allowResizeRows: false,
  19.         allowResizeColumns: false,
  20.         allowEditObjects: false,
  21.         allowDragInsertRows: false,
  22.         allowDragInsertColumns: false,
  23.         allowInsertRows: false,
  24.         allowInsertColumns: false,
  25.         allowDeleteRows: false,
  26.         allowDeleteColumns: false
  27.     };
  28.     options.isProtected = true; //此处导致死循环

复制代码
代码业务需求:让表格加载完后处于不可编辑状态,如下图所示:
image.png611105956.png


复现的步骤:
1,在编辑页面编辑excel,只输入第一行第一个单元格,后面的行全部删除,然后保存,调用spread.toJSON()并存下数据
2,在展示页面执行上述代码,获取到json数据,构造excel.
3,调试发现出现死循环。

5 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-5-19 18:17:54
推荐
该问题已在13.2.1之后的版本修复,请升级至该版本之后。

online.zip

1.69 MB, 下载次数: 20

回复 使用道具 举报
whalefall
注册会员   /  发表于:2022-5-19 18:32:12
板凳
Derrick.Jiao 发表于 2022-5-19 18:17
该问题已在13.2.1之后的版本修复,请升级至该版本之后。

如果不升级的情况下,能否解决该问题呢?可否提供补丁等
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-5-20 09:16:24
地板
whalefall 发表于 2022-5-19 18:32
如果不升级的情况下,能否解决该问题呢?可否提供补丁等

旧版本的bug无法提供补丁,具体原因可以查看此贴
https://gcdn.grapecity.com.cn/fo ... hread&tid=87510

目前最好的建议是升级产品版本,这样对后续使用也更加稳定。
回复 使用道具 举报
whalefall
注册会员   /  发表于:2022-5-25 15:14:40
5#
Derrick.Jiao 发表于 2022-5-20 09:16
旧版本的bug无法提供补丁,具体原因可以查看此贴
https://gcdn.grapecity.com.cn/forum.php?mod=viewthr ...

打扰了,这里不升级的话有办法绕过去吗
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-5-25 16:51:26
6#
whalefall 发表于 2022-5-25 15:14
打扰了,这里不升级的话有办法绕过去吗

这边调研了一下,没有太好的办法可以绕开,这边只能建议升级。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部