找回密码
 立即注册

QQ登录

只需一步,快速开始

硕㏒

金牌服务用户

29

主题

100

帖子

289

积分

金牌服务用户

积分
289
硕㏒
金牌服务用户   /  发表于:2024-6-3 16:55  /   查看:198  /  回复:3
1金币
  1.     // 复制当前 sheet 并保存到vuex
  2.     copySheet() {
  3.       const spread = this.designer.getWorkbook();
  4.       const sheet = spread.getActiveSheet();
  5.       const sheetData = sheet.toJSON();
  6.       // 使用 cloneDeep 处理复杂对象
  7.       const sheetDataCopy = cloneDeep(sheetData);
  8.       this.setSheetData(sheetDataCopy); // 存储到 Vuex
  9.     },

  10.     // 读取并粘贴内容到新的 sheet
  11.     pasteSheet() {
  12.       const sheetData = this.getSheetData;
  13.       const spread = this.designer.getWorkbook();
  14.       const sheet = spread.getActiveSheet();
  15.       if (sheetData) {
  16.         sheet.fromJSON(sheetData, { includeBindingSource: true });
  17.       } else {
  18.         this.$message.error("没有存储的 sheet 数据");
  19.       }
  20.     },
复制代码
以上是我复制粘贴的代码,我在文件中,复制渗水系数那个sheet,然后关闭当前页面,打开一个新的文件,新增了一个sheet,把复制的文件formjson进去,出现了格式混乱, image.png32749937.png

神奇的是,我在渗水系数那个文件,新增一个sheet直接复制,就不会有这个问题,复制到新的文件才会出现这个问题

渗水系数.ssjson

215.03 KB, 下载次数: 12

3 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-3 18:06:37
沙发
您好,在SpreadJS中,样式会存储在WorkBook上和WorkSheet上,当您仅将WorkSheet上的数据导出时,部分存储在WorkBook上的样式将会丢失,所以您在同一个WorkBook上增加WorkSheet不会丢失样式,但是在另一个WorkBook上增加WorkSheet时样式就出现了丢失。

您可以参阅这篇文章来实现工作表的追加:https://gcdn.grapecity.com.cn/showtopic-175882-1-9.html
回复 使用道具 举报
硕㏒
金牌服务用户   /  发表于:2024-6-3 18:13:26
板凳
Joestar.Xu 发表于 2024-6-3 18:06
您好,在SpreadJS中,样式会存储在WorkBook上和WorkSheet上,当您仅将WorkSheet上的数据导出时,部分存储在 ...

那就是暂时没有好的方案就处理是吧,我先手动复制吧
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-6-4 11:48:27
地板
好的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部