找回密码
 立即注册

QQ登录

只需一步,快速开始

Clark.Pan 讲师达人认证 悬赏达人认证 SpreadJS 开发认证

超级版主

200

主题

9897

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
15525

讲师达人悬赏达人微信认证勋章SpreadJS 认证SpreadJS 高级认证元老葡萄

Clark.Pan 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-11-1 15:24  /   查看:633  /  回复:0
背景:

客户使用SpreadJS右键菜单中的排序功能,发现设置的样式不会随着排序的。如何让样式跟着排序的变化走。
例如下面的截图所示:
排序前6,4,1分别为蓝色,绿色和红色。
image.png577660827.png
排序之后结果如下:
虽然按照了升序进行了排序,但是单元格的字体颜色没有随着排序发生变化
image.png226955260.png

解决方案:
首先,通过查看客户的代码,发现客户的样式设置是整行设置的。
image.png211728209.png
这个是问题的关键,因为右键的排序功能是按照选中range生效的,客户操作的行为是选中了其中一列进行排序。结果发现这一列的数据变了,但是样式没有随着排序进行变动。

将其拆开改为单元格的样式设置,问题解决
image.png566633300.png
相同的排序操作之后,之后结果如下:
6,4,1分别为蓝色,绿色和红色。样式随着排序改变位置
image.png955769042.png
原因:
排序是range即单元格级别的操作,如果遇到整行设置的属性,会有冲突,无法随着变化。
需要将其改为单元格级别的设置。常见场景有样式,标签(tag)等。

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部