我有一个需要 jQuery 的 Grails 应用程序,因此我通过插件加载 jQuery 和 jQuery-UI:
buildConfig.groovy:
runtime ":jquery:1.11.1"
compile ":jquery-ui:1.10.4"
只要我不包含也使用 jQuery 的独立 JS 脚本,效果就很好。该脚本名为 myscript.jquery.js,我将其放置在 web-app/js 下。
现在我将这些插件和脚本包含在我的 main.gsp 中:
main.gsp:
<html>
<head>
...
<r:require modules='jquery, jquery-ui, bootstrap, customcss' />
<g:javascript src="myscript.jquery.js"/>
<r:layoutResources disposition="defer" />
<g:layoutHead/>
<r:layoutResources disposition="head"/>
</head>
<body>
...
我得到
ReferenceError: jQuery is not defined
$ = jQuery;
我犯了一个具体的错误吗? 有没有更好的方法来处理这个问题?
PS:我尝试通过 main.gsp 中的脚本直接加载 jQuery,但这没有成功,因为我还有其他依赖于 jQuery 插件的插件:-/
最佳答案
将脚本添加到配置中的 ApplicationResources.groovy 文件中,然后在页面中添加该模块。这将解决问题。
示例: 在你的conf/ApplicationResources.groovy
modules = {
baseJS {
resource url: 'js/myscript.jquery.js'
}
}
在你的 gsp 文件中
<r:require modules='jquery, jquery-ui, bootstrap, customcss, baseJS' />
这是旧博客,但你会明白的
http://www.anyware.co.uk/2005/2011/09/12/optimising-your-application-with-grails-resources-plugin/
谢谢
关于javascript - Grails jQuery 插件和 JS 脚本之间的冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28433860/