gpt4 book ai didi

javascript - SlickGrid——按多个值字段查看和分组

转载 作者:行者123 更新时间:2023-11-30 17:15:50 25 4
gpt4 key购买 nike

我正在使用 SlickGrid并且非常满意,这是我遇到过的最好的网格之一。我用 DataView对于数据和groupItemMetadataProvider用于分组。

我有以下问题,正在寻找解决方案。我的数据包含一些具有多个值的字段。例如。一个数据条目可以与多个国家相关联:美国、IR、新西兰或多个类别:猫、狗、鸟。

两个问题:

  • 在一个单元格中实现多个条目的 View 的最佳做法是什么。 ?我想,可以在此处使用自定义模板或格式化程序,但很高兴听到您的建议。
  • 如何实现按字段分组?例如。我想按国家/地区分组,因此条目应显示在每个国家/地区组下,在美国、澳大利亚和新西兰下的同一行。

现实生活中的例子

不分组

Name    | Animals
-----------------
Paker | cats, dogs, birds
Michael | cats, snakes

按动物分组

Name    | Animals
-----------------
- cats
Paker | cats, dogs, birds
Michael | cats, snakes

- dogs
Paker | cats, dogs, birds

- birds
Paker | cats, dogs, birds

- snakes
Michael | cats, snakes

交叉发布到 SlickGrid Google 群组:https://groups.google.com/forum/#!topic/slickgrid/BxS_4Lny3KE

非常感谢!

最佳答案

在单个单元格中显示自定义或基于集合的数据时,如果尝试垂直呈现该数据,您需要考虑 the lack of native support for dynamic row height .

检查 grouping function (extractGroups ~line 472)

for (var i = 0, l = rows.length; i < l; i++) {
r = rows[i];
val = gi.getterIsAFn ? gi.getter(r) : r[gi.getter];
group = groupsByVal[val];
if (!group) {
group = new Slick.Group();
group.value = val;
group.level = level;
group.groupingKey = (parentGroup ? parentGroup.groupingKey + groupingDelimiter : '') + val;
groups[groups.length] = group;
groupsByVal[val] = group;
}
group.rows[group.count++] = r;
}

显示自定义 getter 是可能的,但在每行的分组中使用/期望单个值。因此,要使具有多值单元格的行出现在多个组中(无需修改源),数据必须“扁平化”。

A less than ideal solution然后变成维护与正在渲染的 View 状态相关的数据集。随着数据交互需求和/或数据大小的增加,此解决方法变得不那么可行,并且倾向于需要在源中实现自定义。

关于javascript - SlickGrid——按多个值字段查看和分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26146042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com