找回密码
 立即注册

QQ登录

只需一步,快速开始

爱豆小糖宝
金牌服务用户   /  发表于:2022-10-13 14:55  /   查看:4275  /  回复:17
同一份数据都调用fromJSON方法,15.2.2版本表格不展示,14.2.6展示正常 使用14版本保存的数据测试.zip (90.8 KB, 下载次数: 310)

17 个回复

倒序浏览
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2022-10-17 11:39:40
沙发
这边问题已复现,但是json数据格式不对,通常来说toJSON()方法调用之后 是正常的json对象数据,但是您这边无论是15.2.2版本还是14.2.6版本的json数据是json字符串,后经过强制转换为了json对象。
如下图所示,获取的toJOSN数据是对象,不是字符串,所以需要您这边再提供下原始文件toJSON后的对象数据。这边来进一步调研原因。
image.png535574950.png
回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-17 16:05:55
板凳
这个确实不是我们原始toJSON的数据,是我们根据业务场景对原始json进行调整的,但是调整后的json确实是在14.2.6依然能够运行,我们之前在生产环境是运行正常的,在15版本运行就异常。

data.json

66.6 KB, 下载次数: 300

回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2022-10-17 18:21:50
地板
爱豆小糖宝 发表于 2022-10-17 16:05
这个确实不是我们原始toJSON的数据,是我们根据业务场景对原始json进行调整的,但是调整后的json确实是在14 ...

根据您给的json,使用SpreadJs 15.2.2 版本或者14.2.3版本,出现结果都是这样子的:
image.png471343383.png
请问这样子的fromJSON()后的场景是您这边想要的场景吗?

具体测试用例见附件中。

14.2.3的json在15.2.2中.html

76.61 KB, 下载次数: 167

14.2.3的json在14.2.3.html

76.61 KB, 下载次数: 170

回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-18 14:04:44
5#
你不能拿完整的json去验证,我的问题是经过我们在业务场景下修改过的json,为什么在14.2.6版本下fromJSON没问题,在15.2.2版本有问题
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2022-10-18 14:26:29
6#
本帖最后由 Ellia.Duan 于 2022-10-18 14:41 编辑

SpreadJS 这边是不建议用户自己修改toJSON后的数据的,因为版本升级可能会带来一些变化,一切都是以toJSON为准的。  如果需要修改json,可以从代码层面做一些改变,来达到toJSON后可以直接formJSON的目的。


其次如果已经做了改变,现在怎么解决在15.2.2中的问题呢?
这边复制了您这边自己修改过的json,放到json格式化之后的编辑器中,报错:
image.png803498534.png
所以这边将您的”使用14版本保存的数据测试中“中的json字符串,首先去掉两边的单引号,然后全局替换下了 \\"改为单引号 与,直到json不报错,此时将不报错的json放到15.2.2中是没有问题的,您这边可以试一下。



回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-18 15:12:56
7#
按照你这边说的情况,我试了下是不行的呢,

14.2.3的json在15.2.2中.html

8.02 KB, 下载次数: 147

回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-18 15:20:02
8#
爱豆小糖宝 发表于 2022-10-18 15:12
按照你这边说的情况,我试了下是不行的呢,

以上给的例子中,json是可以格式化的,放到15上运行不出来,如果在后面调用spread.getActiveSheet()的话,得到的sheet是undefined
回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-18 15:24:26
9#
爱豆小糖宝 发表于 2022-10-18 15:12
按照你这边说的情况,我试了下是不行的呢,

同一份json,在14.2.6中可以得到预期的结果的

同一份json在14.2.6中.html

8.07 KB, 下载次数: 167

回复 使用道具 举报
爱豆小糖宝
金牌服务用户   /  发表于:2022-10-18 15:27:22
10#
Ellia.Duan 发表于 2022-10-18 14:26
SpreadJS 这边是不建议用户自己修改toJSON后的数据的,因为版本升级可能会带来一些变化,一切都是以toJSON ...

直接拿stringfiy后的json去格式化当然是会有问题的,我这边拿未stringfiy的数据也是不行的
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部