请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

拾趣ヾ
金牌服务用户   /  发表于:2025-1-6 10:27  /   查看:101  /  回复:6
1金币
本帖最后由 拾趣ヾ 于 2025-1-6 10:44 编辑

【官网】如何根据formatter和value计算出来text。比如value值是0.6,formatter是"0%",页面上会显示出来60%,想通过 value+ formatter得到60%的API

最佳答案

查看完整内容

您好,可以参考下面的代码: 结果如下:

6 个回复

倒序浏览
最佳答案
最佳答案
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2025-1-6 10:27:56
来自 4#
您好,可以参考下面的代码:
  1.    const baseCellPaint = GC.Spread.Sheets.CellTypes.Base.prototype.paint;
  2.       GC.Spread.Sheets.CellTypes.Base.prototype.paint = function (ctx, value1, x1, y1, a1, b1, style, options) {
  3.         let text = GC.Spread.Sheets.CellTypes.Base.prototype.format(value1,style.formatter)
  4.         console.log('value',value1)
  5.         console.log('formatter',style.formatter)
  6.         console.log('text',text)
  7.         baseCellPaint.call(this, ctx, value1, x1, y1, a1, b1, style, options);
  8.       }
复制代码


结果如下:

image.png27704466.png
回复 使用道具 举报
Winny
超级版主   /  发表于:2025-1-6 10:48:47
2#
您可以创建一个空的worksheet,根据业务需求选择是否需要添加到工作簿中,之后设置对应的value和formatter,设置完之后,使用getText获取formatter之后的值。
image.png191908873.png
回复 使用道具 举报
拾趣ヾ
金牌服务用户   /  发表于:2025-1-6 10:50:53
3#
这种方式不太可取,现在是在重写GC.Spread.Sheets.CellTypes.Text的paint方法中想获取text值,这种方法性能有问题
回复 使用道具 举报
拾趣ヾ
金牌服务用户   /  发表于:2025-1-6 17:00:42
5#
好的谢谢
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2025-1-6 17:58:12
6#
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:3 天前
7#
您好!由于您较长时间未回复,且从跟帖回复中了解到问题已得到有效解答,那就结帖了。如有新问题,欢迎发新帖沟通。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部