找回密码
 立即注册

QQ登录

只需一步,快速开始

枫叶~

注册会员

8

主题

22

帖子

72

积分

注册会员

积分
72
枫叶~
注册会员   /  发表于:2022-6-23 17:04  /   查看:1412  /  回复:4
10金币
本帖最后由 枫叶~ 于 2022-6-23 17:14 编辑

示例: image.png682165527.png
地址:https://demo.grapecity.com.cn/sp ... s/index.html?id=271

我想实现一个像上面示例那样的效果,但是我用的是vue,用的设计器组件初始化的表格。该怎么写呢?

最佳答案

查看完整内容

可以参考附件的demo

4 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-6-23 17:04:38
来自 3#
可以参考附件的demo

vue.zip

128.34 KB, 下载次数: 45

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-6-23 18:05:15
2#
您好,
您通过designer获取spread之后,再按照demo所示代码执行相关方法即可。
在Vue中SpreadJS仍是以js的语法使用的,这一点您可以在学习指南中感受到:
https://demo.grapecity.com.cn/sp ... ll-types/custom/vue
回复 使用道具 举报
枫叶~
注册会员   /  发表于:2022-6-24 10:37:11
4#
Derrick.Jiao 发表于 2022-6-24 08:57
可以参考附件的demo
  1. rollback(button) {
  2.         button = $(button);
  3.         var sheetName = button.attr("sheetName");
  4.         var row = parseInt(button.attr("row"));
  5.         var col = parseInt(button.attr("col"));
  6.         var time = parseInt(button.attr("time"));
  7.         var spread = GC.Spread.Sheets.findControl("ss");
  8.         console.log(spread);
  9.         var sheet = spread.getSheetFromName(sheetName);
  10.         var tag = sheet.getTag(row, col);
  11.         var newTagHis = [];
  12.         if (tag && tag.history) {
  13.           for (let i = 0; i < tag.history.length; i++) {
  14.             var item = tag.history[i];
  15.             newTagHis.push(item);
  16.             if (item.time == time) {
  17.               sheet.setValue(row, col, item.value);
  18.               break;
  19.             }
  20.           }
  21.           // 如果回滚到最初状态,清空单元格类型
  22.           if (newTagHis.length <= 1) {
  23.             sheet.setCellType(row, col, new GC.Spread.Sheets.CellTypes.Text());
  24.           }
  25.           tag.history = newTagHis;
  26.           sheet.setTag(row, col, tag);
  27.         }
  28.         $(".toolTipElement").remove();
  29.       }
复制代码

这个方法的 GC.Spread.Sheets.findControl("ss");  我运行到这里报错了 我没有这个宿主元素id
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2022-6-24 11:05:24
5#
枫叶~ 发表于 2022-6-24 10:37
这个方法的 GC.Spread.Sheets.findControl("ss");  我运行到这里报错了 我没有这个宿主元素id

demo里也写了,在标签上加id
image.png60968321.png

然后通过设计器来找到spread实例
image.png350372924.png

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部