如何在 Grails 中嵌入 jqPlot?有啥特殊标签吗?

Posted

技术标签:

【中文标题】如何在 Grails 中嵌入 jqPlot?有啥特殊标签吗?【英文标题】:How do I embed jqPlot in Grails? Are there any special tags?如何在 Grails 中嵌入 jqPlot?有什么特殊标签吗? 【发布时间】:2013-09-12 04:11:26 【问题描述】:

我正在开发一个 Web 应用程序,我应该使用 Grails 框架(我大约一周前才开始学习 Grails)。我知道如何使用 htmljavascript 等创建网站和 jqPlot 图形。但是,我似乎找不到任何关于如何在 Grails 视图中实现 jqPlot 的信息。我想知道是否有像<g:...(Grails html 标签)这样的特殊标签,或者甚至像<jqplot:... 这样的标签——在Grails 插件页面<jqplot:resources/><jqplot:plugin name="pieRenderer"/> 上给出了,但不知何故,这个列表感觉不完整。难道没有 Grails 方法可以避免在 javascript 中编写 $.jqplot(...) 吗?

另外,我希望看到实际的“grails 中的 jqPlot”示例,是否有任何此类资源?

【问题讨论】:

【参考方案1】:

不使用任何插件,您可以将 jqPlot 添加到您的应用程序中,这意味着将项目文件复制到您的 web-app 目录中。假设您正在使用 Grails 2.x,在您定义资源模块的 conf 目录中的 applicationResources.groovy 中定义 jqPlot 资源。将您需要的文件添加到此模块中,以便您可以在应用程序中使用它们。您需要阅读 jqPlot 文档以确保您包含了与图表相关的所有必需资源。

    visualization 
        dependsOn 'jquery'
        resource url: 'jquery.jqplot/excanvas.min.js'   ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/jquery.jqplot.min.js'  ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/jquery.jqplot.min.css' ,disposition:'head' , bundle:'app'

        resource url: 'jquery.jqplot/plugins/jqplot.dateAxisRenderer.min.js' ,disposition:'head'    , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js'  ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js' ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.canvasTextRenderer.min.js'  ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.cursor.min.js'  ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.bubbleRenderer.min.js'  ,disposition:'head' , bundle:'app'
        resource url: 'jquery.jqplot/plugins/jqplot.categoryAxisRenderer.min.js'    ,disposition:'head' , bundle:'app'
    

在你想使用 jqplog 的页面上只需要包含可视化模块。

<r:require modules="visualization"/>

【讨论】:

好的,谢谢。还有一个 grails 标签可以用来代替 $.jqplot() 函数吗?我想这就是我的目标。 有一个":jqplot:0.1" 插件,但似乎处于非常早期的阶段,自2010年以来从未更新。看看它,看看你是否可以使用它。像这样的 imo 库更容易直接使用它们,并且与您在 html 页面上使用它们的方式相同。您可能需要设置很多选项,以便更轻松地将其作为 javascript。 所以我尝试了你的例子。我究竟需要在哪里解压 jquery 和 jqplot 库才能使其工作? 这些将转到 web-app 目录,在我的示例中,我将它们全部放在 jquery.jqplot 文件夹中。

以上是关于如何在 Grails 中嵌入 jqPlot?有啥特殊标签吗?的主要内容,如果未能解决你的问题,请参考以下文章

无法与 typedef 成为朋友:有啥特别的原因吗?

Hibernate - @Transactional 不起作用有啥特别的原因吗?

裴波那契数列是怎样的数列?有啥特别的地方

如何使用 shiro 在 grails 2.0 中实现 BasicHttpAuthentication?有啥亮眼的例子吗?

GRAILS ---命令 grails war 和 gradle build 有啥区别?

如何在不重绘图表的情况下刷新 jqplot 条形图