【问题标题】:Slickgrid sorting a hierarchySlickgrid 对层次结构进行排序
【发布时间】:2020-12-25 19:45:47
【问题描述】:

我创建了一个只有 2 个级别的 slickgrid 层次结构。层次结构的实现遵循示例 5 (https://6pac.github.io/SlickGrid/examples/example5-collapsing.html)。我正在使用以下叉子 - http://6pac.github.io/SlickGrid。我只想按第一级排序,并让孩子们按相同的顺序排列。我尝试将可排序属性添加到列中,但这没有做任何事情。关于如何做到这一点的任何指示,我不知道从哪里开始。一如既往地提前感谢。

【问题讨论】:

  • 您的问题中没有足够的信息来帮助您...您使用的是什么 lib/fork?你试过什么代码?通过提供此类信息,您将在获得答案方面获得更多变化,并避免被否决甚至关闭您的问题
  • 我编辑了上面的帖子以提供您要求的信息。任何指针都非常感谢。

标签: sorting hierarchy slickgrid


【解决方案1】:

关于您所引用的示例,有几点需要注意。

  1. 在该示例中对数据进行排序是您自己的事,简而言之,这意味着您必须添加自己的排序函数,并且最终必须创建很多递归函数(因为分层数据只能通过递归进行排序)
  2. 最好预先构建来完成这种工作,因为我也需要它,所以我开始了一项功能更改,最终将合并到 6pac/SlickGrid 分支中,我在此简要介绍一下发布post,您可以在其中看到动画 gif。但从来没有时间完成它,我也在等待某人的帮助来完成它。除非我们合并它有
    • 我开始的功能是来自我的 fork 的 Example,它最终将被合并。您可以使用该代码并且它应该可以工作,但是您还需要一个新的 SlickGrid 插件,我们创建了 plugins/slick.treeData.js 并带有一些用于递归内容的帮助程序(请记住,使用层次结构对树数据进行排序需要您使用递归,这很有趣...如果你喜欢拉头发)
  3. 或者最后的选择是使用我的另一个库Slickgrid-Universal,它是 SlickGrid 之上的一个包装器(因此它使用 6pac/SlickGrid 分支并且是一个依赖项)。我创建的这个新库与框架无关(它可以在任何框架中使用),并且样本是用普通的 TypeScript(或者你想要的 JavaScript)编写的,分层数据集有 2 个样本Tree Data with parentId referencesTree Data with hierarchical dataset
    • 我最终想在我的库中添加的是支持 SlickGrid 内置聚合器,但一直没有时间完成它(这实际上与我在上面写的阻止选项 2 相同)。
  4. 如果您使用其他框架,我还创建了 2 个其他库 Angular-SlickgridAurelia-Slickgrid,它们具有与选项 3 相同的功能集。

所以从列表中选择您的选择,这不是一个容易使用的选项,但这些是当前选项,显然选项 1 是最难的,因为选项 2-3 基本上意味着我已经完成了选项 1 的工作。

选项 2 可以在这个动画 gif 中看到

【讨论】:

  • 先谢谢你这么详细的回复。我确实看到了 slickgrid-universal,这当然可以解决问题,但是我在 slickgrid 上投入了大量时间。我还有其他想要为我的项目做的功能,所以我不需要立即使用,因此我将等待选项 #2。我要感谢您为像我这样的新手在光滑网格和监控 stackoverflow 方面所做的努力。期待这个功能。如果您需要 Beta 测试人员,请告诉我。最好的,戴夫
猜你喜欢
  • 2022-01-08
  • 2016-05-21
  • 1970-01-01
  • 1970-01-01
  • 2019-12-27
  • 2013-09-16
  • 1970-01-01
  • 2013-01-13
  • 1970-01-01
相关资源
最近更新 更多