6

我已经在 grails 中编码了几个月了。它们通过 main.gsp 文件添加到页面中,其中包含以下内容:

<g:javascript library="jquery"/>
<r:require module="jquery-ui"/>

jquery 和 jquery-ui 插件在对话框、排序等方面运行良好,但我现在想将选项卡小部件添加到我的页面中,并且插件框架附带的 jquery 和 jquery-ui 版本似乎没有与他们一起工作。当我将源直接添加到页面时:

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>

一切正常。所以现在我正在考虑完全转储插件并手动添加库。

这样做的最佳方法是什么?我可以将它们放在 /js 目录中并修改 ApplicationResources.groovy 以引用它们,但一位同事提到他更喜欢将它们添加到 Config.groovy 的 grails.resources.modules 部分。我想知道实现这一目标的最佳方法是什么。

我在 Config.groovy 中也有以下内容:

grails.resources.modules = {

overrides {
    'jquery-theme' {
        resource id: 'theme', url: '/css/smoothness/jquery-ui-1.10.0.custom.css'
    }
}

如果我删除插件并自己管理库,是否需要将其移动到其他地方或更改它?

4

1 回答 1

8

这两个选项都有效。您可以使用Config.groovyApplicationResources.groovy

在删除插件之前,我建议您检查您需要的版本是否存在。grails.org 的插件门户只会显示最新版本。我在这里尝试过并且:jquery:1.9.1存在但:jquery-ui:1.10不存在。

手动声明资源

因此,如果您需要,您可以为 JQuery 和 JQuery UI 声明您的资源。只需删除插件和覆盖,然后添加您的配置。这些文件必须放在 js 和/或 css 文件夹中。

如果需要,您还可以检查环境并更改为缩小版本。例子:

//use the minified version in production
def minified = GrailsUtil.isDevelopmentEnv() ? "" : ".min"

modules = {
  jquery {
    resource url: "/js/jquery-1.9.1${minified}.js"
  }
  'jquery-ui' {
    resource url: "/js/ui/1.10.2/jquery-ui${minified}.js"
    resource url: "/css/smoothness/jquery-ui-1.10.0.custom${minified}.css"
  }
}
于 2013-04-22T23:48:04.690 回答