找回密码
 立即注册

QQ登录

只需一步,快速开始

前端小菜鸟

初级会员

25

主题

90

帖子

273

积分

初级会员

积分
273
前端小菜鸟
初级会员   /  发表于:2023-3-20 12:38  /   查看:2365  /  回复:10
1金币
本帖最后由 Lynn.Dou 于 2023-3-27 18:29 编辑

如题,需求是有三级的表头 我应该怎么写表头数组????

最佳答案

查看完整内容

下图红框就是仿照您模板结构设计的,也就是您原来的表头。 隐藏table列头的原因是,table列头会带有筛选按钮和列头名称,不符合您模板所显示的整体结构。 您只需要用table的数据区域,来显示数据绑定的内容就好了。 上图table设置为蓝色主题,是为了让您区分哪些是table区域,哪些是普通单元格区域。 事实上,您也可以将table主题设置为普通单元格样式,这样模板的整体样式会一致。 如下图,设置红框内的table样式看看 ...

10 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-20 12:38:56
来自 11#
下图红框就是仿照您模板结构设计的,也就是您原来的表头。
image.png540106811.png
隐藏table列头的原因是,table列头会带有筛选按钮和列头名称,不符合您模板所显示的整体结构。
您只需要用table的数据区域,来显示数据绑定的内容就好了。

上图table设置为蓝色主题,是为了让您区分哪些是table区域,哪些是普通单元格区域。
事实上,您也可以将table主题设置为普通单元格样式,这样模板的整体样式会一致。

如下图,设置红框内的table样式看看效果。
image.png461947326.png
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-20 14:22:18
2#
目前的处理方式是  拿到数据后做一个行的大循环,然后一个cell一个cell的的放 这种方式太慢了。
有什么数据处理的方式可以快一点么???
sheet.setArray 这种方式 能不能快一点???
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-20 17:42:43
3#
本帖最后由 Lynn.Dou 于 2023-3-20 17:44 编辑

您好,
根据三级表头的结构您整理好数据数组,然后setArray赋值测试看看。
需要注意,如果是合并单元格,数组内对合并单元格左上角单元格设置值,其余可以设置为空。
如果数据比较多,可以在赋值前后加上 suspendPaint/resumePaint 提升下渲染性能。
https://demo.grapecity.com.cn/sp ... ook/painting/purejs
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-21 09:02:10
4#
Lynn.Dou 发表于 2023-3-20 17:42
您好,
根据三级表头的结构您整理好数据数组,然后setArray赋值测试看看。
需要注意,如果是合并单元格, ...

您好,我想问的是对于多级表头的处理,怎样才是数据绑定最好的方式呢???
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-21 16:05:53
5#
复杂表头模板是什么样的,您提供下ssjson文件,这边分析看看。
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-22 15:32:21
6#
1679470318351.png99126586.png
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-22 15:33:59
7#
Lynn.Dou 发表于 2023-3-21 16:05
复杂表头模板是什么样的,您提供下ssjson文件,这边分析看看。

大概是这样的 表头也没什么规律 一共六十及列吧

现在的问题是 没有办法绑定数据源
搞了个循环 一个cell 一个cell赋值

做修改保存的时候 还拿不到getDirtyCells

请问这些问题该怎么解决???
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-22 15:37:43
8#
1679470624093.png393969420.png
后端给的数据格式是 一块一块 一行一行的给的
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-22 18:19:04
9#
有个思路可以参考下,如下图:
将三行表头仍作为普通单元格区域,对表头下方的区域设置为table,并设置不显示标题行。
此时可以将标题行所占据的一行(下图第5行)隐藏。
image.png93537291.png
之后可以正常绑定数据源,且表头不会受影响。

另,根据您截图所示划分为4个table区域,根据后端返回的数据源绑定对应table即可。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部