找回密码
 立即注册

QQ登录

只需一步,快速开始

dengxpeng

注册会员

11

主题

61

帖子

180

积分

注册会员

积分
180

圣诞拼拼乐

dengxpeng
注册会员   /  发表于:2020-11-11 18:17  /   查看:3502  /  回复:9
image.png823559570.png
如图,用addRows 添加了行,但是绑定数据源过后会报错,
但是用sheet.setRowCount就没有问题。这是怎么回事呢?
image.png305416869.png

image.png302576903.png

9 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-11-12 09:55:16
沙发
您好,建议您上传能快速复现此问题的demo文件,这边来查找下原因。
回复 使用道具 举报
wheather
初级会员   /  发表于:2020-11-12 10:55:17
板凳
addRow之前先看 rowCount的够不够用 不够 sheet.setRowCount 设置一下
回复 使用道具 举报
dengxpeng
注册会员   /  发表于:2020-11-12 11:23:35
地板
wheather 发表于 2020-11-12 10:55
addRow之前先看 rowCount的够不够用 不够 sheet.setRowCount 设置一下

addRow过后,行数肯定够,都超过好几行,还是会报错,而且,add完了过后,setRowCount ,会再次增加 setRowCount传的行数。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-11-12 11:59:44
5#
这边简单测试了下,addRows一般不会报此错误。猜测可能与合并单元格有关。
您提供一个能复现此问题的demo,具体原因要查看代码才能找到。
回复 使用道具 举报
dengxpeng
注册会员   /  发表于:2020-11-12 15:17:47
6#
lynn512 发表于 2020-11-12 11:59
这边简单测试了下,addRows一般不会报此错误。猜测可能与合并单元格有关。
您提供一个能复现此问题的demo ...

我看能不能做demo复现吧,现在用另外的方式 暂时规避了这个问题。
回复 使用道具 举报
dengxpeng
注册会员   /  发表于:2020-11-12 15:51:06
7#
lynn512 发表于 2020-11-12 11:59
这边简单测试了下,addRows一般不会报此错误。猜测可能与合并单元格有关。
您提供一个能复现此问题的demo ...

插入数据的demo可以用 这个链接里面的,https://gcdn.grapecity.com.cn/fo ... 3&fromuid=60137 (出处: 葡萄城产品技术社区)[/url]  

增加几行测试数据代码即可,   var data = {projectsList: [{company:'a'},{company:'b'},{company:'c'}]};
            sheet.addRows(3,3);
            // sheet.setRowCount(6);
            sheet.setDataSource(new spreadNS.Bindings.CellBindingSource(data));

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-11-12 16:42:35
8#
本帖最后由 lynn512 于 2020-11-13 09:36 编辑

原因是V13版本中对表格中做了增强处理,这导致如果表格绑定内容超出了sheet本身rowCount的范围,就会出现这样的错误。
解决办法有两种:
1.在V13版本中,绑定setDataSource之前先获取一下datasource的长度,然后设置sheet的rowCount留有足够的行。然后再setDataSource
2.在新版本V14中,可以通过设置table.expandBoundRows(true);然后再setDataSource的方式来解决。

您可以参考这个帖子。
https://gcdn.grapecity.com.cn/fo ... 82714&fromuid=59119
回复 使用道具 举报
dengxpeng
注册会员   /  发表于:2020-11-20 10:10:24
9#
lynn512 发表于 2020-11-12 16:42
原因是V13版本中对表格中做了增强处理,这导致如果表格绑定内容超出了sheet本身rowCount的范围,就会出现这 ...

好的,我现在也是用的setRowCount 来做处理的
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-11-20 10:42:49
10#
问题解决了就好,那本帖就先结帖了。
有问题欢迎另开新帖。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部