找回密码
 立即注册

QQ登录

只需一步,快速开始

一博科技

中级会员

51

主题

147

帖子

568

积分

中级会员

积分
568
一博科技
中级会员   /  发表于:2022-5-26 15:56  /   查看:1226  /  回复:5
本帖最后由 一博科技 于 2022-5-26 15:58 编辑

问题:在表格渲染的时候添加批注信息,用户使用过程中会出现批注卡在某个坐标不消失,控制台报错;

批注代码:// 遍历所有数据设置功能及操作
let ellipsisCol=[10,11,15,26];  // 客户需求、需求参数、报价品牌、备注-采购
this.tableData.map((val, i) => {
  // 溢出单元格省略号替代
  ellipsisCol.map(col=>{
    sheet.setStyle(i, col, style, GC.Spread.Sheets.SheetArea.viewport);
  })

  if(val.ybPnColor===1){
    sheet.getCell(i, 14).foreColor('red');
  }

  sheet.getCell(i, 0).wordWrap(true); // 设置换行
  sheet.getCell(i, 2).wordWrap(true); // 设置换行

  // OA编码(批注市场备注、工程备注)
  if (val.noteSaler) {
    let noteEngineer = val.noteEngineer !='' && val.noteEngineer != null ? '\n\n工程备注:'+val.noteEngineer : '';
    sheet.comments.add(i, 4, "市场备注 :" + val.noteSaler+noteEngineer).autoSize(true);
  }
  // 客户级别(批注客户编码)
  if (val.custcode) {
    sheet.comments.add(i, 7, "客户编码 :" + val.custcode);
  }

  // 库存不足修改颜色(批注库存不足)
  if (val.ybStockState == 0) {
    sheet.comments.add(i, 16, "库存不足 :" + val.ybStock);
    sheet.getCell(i, 16).foreColor('red');
  }
  // 版本号的变更(批注版本变更)
  if (val.materielAlterScope) {
    sheet.comments.add(i, 28, val.materielAlterScope);
    sheet.getCell(i, 28).foreColor('red');
  }
  // 设置按钮
  sheet.setStyle(i, 32, inlineBtn)  // 物料操作
  this.hasOnline.map(t => {sheet.setStyle(t, 33, onlineBtn)}) // 电商价格按钮
  sheet.setStyle(i, 34, outBtn) // BOM操作

  // 0表示未报价(默认),1表示工程确认不需要报价,2表示已报价,3表示不需要报价、无货,或者供应商未及时响应的标记
  if (val.quoteState == 3) {
    sheet.getCell(i, -1).textDecoration(GC.Spread.Sheets.TextDecorationType.lineThrough);
  }
})
图:
image.png943321533.png
补充:
鼠标再次经过“卡着的”批注信息上,就会出现报错:
image.png754977416.png







5 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-5-26 17:54:51
沙发
您好,
根据提供的代码未能复现此问题,请提供可直接复现此问题的简单demo,
这边需要在代码基础上调试来进一步调研原因。
回复 使用道具 举报
一博科技
中级会员   /  发表于:2022-5-26 18:32:44
板凳
Lynn.Dou 发表于 2022-5-26 17:54
您好,
根据提供的代码未能复现此问题,请提供可直接复现此问题的简单demo,
这边需要在代码基础上调试来 ...

问题并不是你点一下就出来的,非必现,耐心点,狂点就出来了.
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-5-27 11:48:42
地板
您提供的代码未包含完整信息,所以无法通过运行demo来复现此问题。
如下图:
image.png401431884.png
请在附件demo基础上添加相应的数据,使可以成功运行来复现此问题,这样这边才能进一步通过调试调研问题原因。

demo-sjs模板.html

5.57 KB, 下载次数: 26

回复 使用道具 举报
一博科技
中级会员   /  发表于:2022-5-27 13:42:29
5#
Lynn.Dou 发表于 2022-5-27 11:48
您提供的代码未包含完整信息,所以无法通过运行demo来复现此问题。
如下图:

先搁置吧,我没法必现,有概率出现
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-5-27 14:53:14
6#
好的,后续如果可以稳定复现,欢迎继续交流。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部