Lynn.Dou 发表于 2022-12-22 15:51:58

框架内如何实现复制自定义单元格

本帖最后由 Ellia.Duan 于 2023-8-23 12:14 编辑

背景:

有小伙伴在使用自定义单元格时,发现无法对其复制粘贴。

尝试设置了typeName后,purejs demo中复制粘贴没有问题了,

但是在vue等框架中该设置似乎是“无效”的,这是什么原因呢?

在purejs demo中,自定义单元格函数(如:FivePointedStarCellType)是注册到window上的,
所以设置typeName字段名之后,复制粘贴时可以自动从window中获取FivePointedStarCellType。
但是在框架内,FivePointedStarCellType并不是定义在window上的,所以我们需要重写 getTypeFromString 函数来手动解析自定义单元格类型的字符串。
GC.Spread.Sheets.getTypeFromString = function (typeStr) {
    if (typeStr === 'FivePointedStarCellType') {
      return FivePointedStarCellType;
    }
}export class FivePointedStarCellType {
    constructor() {
      this.typeName = "FivePointedStarCellType";
      this.size = 10;
    }
}

页: [1]
查看完整版本: 框架内如何实现复制自定义单元格