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

QQ登录

只需一步,快速开始

404404404

注册会员

5

主题

10

帖子

37

积分

注册会员

积分
37
最新发帖
404404404
注册会员   /  发表于:2023-9-18 17:15  /   查看:54  /  回复:5
本帖最后由 Lynn.Dou 于 2023-9-20 10:29 编辑


vue-dome.rar

2.86 MB, 下载次数: 2

5 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-9-18 17:51:20
沙发
您好,
demo运行起来了,但是如何复现您描述的问题呢?
请结合此demo详细描述下操作步骤,以及您当前遇到的问题和期待的结果,以便问题的进一步调研。
image.png394815368.png
回复 使用道具 举报
404404404
注册会员   /  发表于:2023-9-18 18:16:11
板凳
Lynn.Dou 发表于 2023-9-18 17:51
您好,
demo运行起来了,但是如何复现您描述的问题呢?
请结合此demo详细描述下操作步骤,以及您当前遇到 ...

现在每一行数据的每一个字段都是当前行下标,随便找一列选择倒序排列,然后点击表格下面的查看数据,打印出来的第一行的id和status和页面显示的数据不匹配
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-9-19 10:57:04
地板
根据demo代码,猜测您应是使用的表单数据绑定。因为demo中做了深层次的封装,不好直接判断业务逻辑,所以这边模拟表单绑定功能,整理了一个测试demo。
测试结果如下动图,即做了排序操作之后,getDataSource获取的是排序后的数据源。
您可以参考此demo,结合自己项目业务逻辑,调研下问题原因。
注:demo基于新版本(V16.2.2)测试的,您当前使用的版本太老了,V12是否结果一致需要您替换版本实际测试下。

表单绑定相关资料如下:
https://demo.grapecity.com.cn/sp ... evel-binding/purejs
1.gif897640380.png

sheetBinding.zip

34.22 KB, 下载次数: 2

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-9-19 12:05:00
5#
经电话沟通,复现了您描述的问题,即您希望在排序后,未绑定的字段也可以随之一起更新。
需进一步调研下具体原因,待有进展贴中通知您。
本贴先做保留处理。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-9-18 17:15:49
6#
更新进展:
此问题属于产品设计,SpreadJS产品是基于单元格的颗粒度进行控制而非行列,因此在实现上只对绑定的内容进行双向绑定。
如您提供示例,因为id没有进行列绑定,所以不会跟着排序进行更换。
基于您的需求,建议对id、status字段进行列绑定,然后通过visible参数不让id显示。
  1. sheet.bindColumns([
  2.      { name: "id", displayName: "ID", visible: false, size: 200 }
  3. ]);
复制代码


另外,也可以考虑用集算表,集算表在设计上是基于行数据来展示的,支持加载外部数据源,在排序时可以实现整行数据的位置变动。
具体您可以参考学习指南介绍,评估下是否满足您的需求:
https://demo.grapecity.com.cn/sp ... eet/overview/purejs
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部