使用哪个jquery draggable / resizable仪表板模板

时间:2015-07-23 15:16:09

标签: jquery jquery-ui jquery-ui-draggable gridster dashing

背景

我正在制作一个显示日志数据的前端界面。我目前有一个表格,显示包含大量操作的原始数据,类似于热图的日历和显示任何所选属性,时间段和粒度的聚合数据的条形图(使用d3)。数据大小相当大,因此所有操作都在后端完成(字面意思是,所有过滤/排序等都是对服务器端的AJAX调用)。应该有更多的图表以类似的方式出现。

目标

我想要的是一个仪表板,后面使用JQuery为所有图表和统计数据。我简要地略过了以下几个选项:

  • GridList
  • Dashing
  • 网格(由于声誉而无法插入2个以上的链接......)

  • sDashboard ^

  • Gridster(根据Gridlist,它已不再开发,因此可靠性不确定?)

问题是我无法真正区分所有这些或者哪一个更合适,而且我的前端体验非常有限(我几天前查看并学习了JS函数定义语法)。以下是我希望理想的功能列表:

  1. 每个窗口小部件的行为类似于普通的DOM对象,或者好像没有窗口小部件。所以我仍然可以操作窗口小部件中的表格和图形,相互发送AJAX调用。
  2. 能够为不同的图形添加具有自定义设置的小部件,理想情况下还可以使用小部件之间的用户定义关系(我正在考虑分配ID)。因此,例如,可能有4个小部件:2个表和2个图表,每当我点击表A时图形A都会相应地改变,而在表B上操作时图形B也会改变。(这听起来很棘手,是否可行?)
  3. [ Optional Ones ]

    1. 只需点击一下
    2. ,即可将整个电路板更改为某个预设布局
    3. 选项以几乎全屏模式弹出窗口的方式显示窗口小部件,以便更好地操作
    4. 到目前为止,这些是我能想到的。想知道是否有人做过类似的事情,以及每个/任何上述选项的优缺点/限制是什么?任何建议表示赞赏:)

1 个答案:

答案 0 :(得分:0)

为什么要自己制作?请改用ELK(Elastica,Log Stash,Kibana)。

它已经构建并完全符合您的需要 - 除非您正在登录数据库。如果你是,那么愿上帝怜悯你的灵魂(和你可怜的DBMS)。

以下是DigitalOcean的教程,其中包含设置说明: https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-4-on-ubuntu-14-04

总之...

免责声明 - 我为Dashing项目做出了贡献,而且我有很大的偏见。

您的清单答案:

  1. HTML页面上的所有元素都是可以操作的“普通DOM对象”,我不明白这与AJAX有什么关系。您可以从任何网页运行AJAX请求,只要请求发送到同一域或具有CORS标头的其他域(否则您遇到XSS问题)
  2. Dashing并不真正支持小部件与开箱即用的其他小部件交互,但我仍然可以编写代码。这听起来很复杂,我可能会反对它。
  3. 在Dashing中,您可以拥有多个仪表板,只需链接到每个仪表板即可获得不同的布局。每个仪表板都有自己的ERB模板,该模板根据请求的HTTP路由呈现不同的HTML。
  4. 现代浏览器支持Fullscreen API,可用于使小部件全屏显示。