找回密码
 立即注册

QQ登录

只需一步,快速开始

ttnkh21

初级会员

51

主题

151

帖子

492

积分

初级会员

积分
492
ttnkh21
初级会员   /  发表于:2021-5-7 15:28  /   查看:5588  /  回复:7
10金币
数据列有两三万行,三四十列的样子,原用ngzorro列表,主要功能:
1,动态选择要显示的列和保存,并在下次打开时,显示保存的列。
2,动态移动列的位置并保存。
3,前端复杂条件检索和排序。
4,增删改查等基础操作。
最近尝试使用wijmo, 遇到如下问题。
1,一次性加载所有列,在选择要显示的列时,卡顿严重。


2,尝试使用虚拟滚动,发现并非真正的虚拟滚动,而是懒加载,这样的话,搜索要如何解决呢?放到后端吗?
3,angular如何保存和设置要显示的列,在下次加载时,隐藏不需要显示的列?
4,angular如果保存拖动后列的位置?

最佳答案

查看完整内容

列头设置可以在app.component.html中定义,比如这个示例 https://demo.grapecity.com.cn/wijmo/demos/Grid/Columns/ColumnWidth/angular

7 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-7 15:28:07
来自 8#
列头设置可以在app.component.html中定义,比如这个示例

https://demo.grapecity.com.cn/wi ... ColumnWidth/angular



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-7 16:08:16
2#
问题已经收到,因为问题较多。我这边统一验证后给您答复
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-8 11:44:08
3#
1.这个暂时没有好的解决办法,

2.是的,或者说是按需加载,全局搜索的话得在后台进行。你说的真正的虚拟加载是指什么呢

3.这个demo最下端就有保存布局和加载布局的示例代码,通过flex.columnLayout即可获取设置布局
https://demo.grapecity.com.cn/wi ... ColumnPicker/purejs

4.和问题3设置方式相同
回复 使用道具 举报
ttnkh21
初级会员   /  发表于:2021-5-10 08:58:47
4#
感谢版主大大周末还回复

我说的那个虚拟滚动指的是 这个 [color=rgba(0, 0, 0, 0.85)]VirtualScroll 属性。只渲染当前显示的行和列。
[color=rgba(0, 0, 0, 0.85)]另外,flex.columnLayout 不起作用,是我的用法不对吗?
表头并没有根据columnLayout设置的加载。












本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
ttnkh21
初级会员   /  发表于:2021-5-10 09:05:28
5#
刚刚发现,是生命周期的问题,用的angular11.2

两个生命周期函数都不可以,加了时间延时函数后,会起作用,但是,页面会闪烁一下后再变过来。
有什么好的办法吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-10 10:07:57
6#
我这里测试没有重现问题,简单的给布局删了第二列,不需要加延时就行,建议你直接通过获取columnlayout再进行修改
  1.         var layout=JSON.parse(this.flex.columnLayout);
  2.         layout.columns.splice(1,1);
  3.         console.log(layout);
  4.         this.flex.columnLayout=JSON.stringify(layout);
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
ttnkh21
初级会员   /  发表于:2021-5-10 10:34:16
7#
Richard.Ma 发表于 2021-5-10 10:07
我这里测试没有重现问题,简单的给布局删了第二列,不需要加延时就行,建议你直接通过获取columnlayout再进 ...

好的,我试一下。
angular 有办法像 js一样在初始化的时候添加列头设置吗?

这样好像数据不是双绑的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部