0

我正在开发一个基于 SproutCore 1.8 的项目。我的应用程序必须在复杂的表格视图中显示大量数据。事实上,表格视图将是应用程序界面的核心元素之一。此外,我可能需要一个大纲/树视图,允许我在类似表视图的界面组件中显示分层数据。

我最初尝试使用SC.TableView,但从 SproutCore 框架的 v1.6 开始,这似乎已被弃用。我得到一个控制台输出,建议使用社区 tableview,但没有找到那么多。

我在 SC Google Groups 中发现了一些提示,建议应该考虑使用SlickGrid,并且有人围绕 SlickGrid 编写了一个小型 SproutCore 包装器,您可以将其插入到您的 SproutCore 应用程序中。我不得不承认,我还没有尝试过。

但是,由于我的应用程序不是一个大型实验,并且我不太愿意在标准 UI 组件上投入太多精力,我希望这些组件可以在复杂的 UI 框架中随时可用,所以我想问一下是否有任何可靠且可靠的解决方案在 SproutCore 框架中“开箱即用”?

4

1 回答 1

1

但是,由于我的应用程序不是一个大型实验,并且我不太愿意在标准 UI 组件上投入太多精力,我希望这些组件可以在复杂的 UI 框架中随时可用,所以我想问一下是否有任何可靠且可靠的解决方案在 SproutCore 框架中“开箱即用”?

不幸的是,简短的回答是否定的。Sproutcore 是一个很好的框架,有很多优势,但诚实的事实是没有开箱即用的好表视图。

您最好的选择是按照 google 群组的建议使用 SlickGrig。如果该外部库满足您的所有需求,那么让它与 SC 一起工作并不难您将创建一个SC.View. 实现该didAppendToDocument方法并在其中根据其说明初始化光滑网格。从那里,用于SC.Event.add侦听光滑网格 dom 上的事件,并在您的处理程序中调用您的应用程序逻辑。一定要包裹在一个SC.run(function(){...})所以你得到一个运行循环。所以基本上,您正在编写一个代理光滑网格实例的视图。您将面临的最大挑战是浏览器可计算性问题,使数据的 SC 表示与 SG 的内部表示(用于排序等)保持同步,如果您打算利用 SG 的大量功能,它可能是一些代码。

另一种选择是滚动您自己的网格。但这还有很多工作要做。

真的,如果 SG 路径看起来太难,实际上,你最好选择一个有网格的框架。

于 2012-04-29T14:00:07.670 回答