升级后遇到 ShapeBaseData 问题解决办法
背景:SpreadJS V15 升级到 SpreadJS V17 版本后出现了 ShapeBaseData 的报错,详细报错信息如下图所示
问题分析:
该问题由于 SpreadJS 在 V17版本对图表功能进行了增强重构,新的重构基于的是形状功能的底层,原因是为了支持图表的分层以及组合,旋转等效果。
基于新的底层,图片功能在引用时需要额外引用 gc.spread.sheets.shapes.xx.x.x.min.js 这个 js 文件。
解决方案:
1. 检查是否有引入 gc.spread.sheets.shapes.xx.x.x.min.js 文件,如果引入了该文件,检查一下该文件是否在 gc.spread.sheets.charts.xx.x.x.min.js 之前引入。
因为新的chart基于 shapes 所以必须引入在 gc.spread.sheets.charts.xx.x.x.min.js 文件之前。
2. 将 gc.spread.sheets.charts.xx.x.x.min.js 文件替换为 gc.spread.sheets.legacycharts.xx.x.x.min.js。legacycharts就是V17之前老版本chart相关的功能。所以如果只是平替,忽略功能性的升级,那么直接替换成 legacycharts 也是可以的。
还需要版本号严格对齐。。。 yangshuai 发表于 2024-8-13 17:58
还需要版本号严格对齐。。。
这是必须的,但凡SpreadJS的引用都必须保证版本严格对齐。跟这个错误本身没啥关系
页:
[1]