Javascript Grails应用程序资源部署问题
我正在运行一个具有4个不同视图的grails应用程序,当我运行该应用程序时,它可以正常运行 但是,在创建WAR文件并将其部署到计算机中后,其中一个选项卡上出现错误(关于jQuery的错误)(服务器-ApacheTomcat 7.0.47和grails 2.3.4) 错误: 找不到资源文件jquery-ui-1.10.4.custom.js 现在,资源文件中没有提到这个文件名,但是在使用g:javascript(加载)的视图文件中有这个文件名 浏览器控制台上的错误基本上也是由于jQuery冲突造成的 问题是我有多个jQuery文件,它们相互冲突,而且prototype js也在那里,所以我们有一个jQuery无冲突来防止这种情况 我想了解“ApplicationResource.groovy”是如何使用的,以及为什么使用它?是否仅在生产模式下使用 如何加载js和css文件?使用g:javascript从views页面还是从resources方法 如何加载jQueryUI和prototype以避免出现错误 ApplicationResources.groovy:Javascript Grails应用程序资源部署问题,javascript,jquery,grails,Javascript,Jquery,Grails,我正在运行一个具有4个不同视图的grails应用程序,当我运行该应用程序时,它可以正常运行 但是,在创建WAR文件并将其部署到计算机中后,其中一个选项卡上出现错误(关于jQuery的错误)(服务器-ApacheTomcat 7.0.47和grails 2.3.4) 错误: 找不到资源文件jquery-ui-1.10.4.custom.js 现在,资源文件中没有提到这个文件名,但是在使用g:javascript(加载)的视图文件中有这个文件名 浏览器控制台上的错误基本上也是由于jQuery冲突造成
modules = {
application {
resource url:'js/application.js'
resource url:'js/d3.v3.min.js'
resource url:'js/jquery-1.10.2.min.js'
resource url:'js/bootstrap.min.js'
resource url:'js/dygraph-1.0.combined.js'
resource url:'js/spin-1.3.0.min.js'
resource url:'js/moment-2.1.0.min.js'
resource url:'js/JGS.ServerDataSimulator.js'
resource url:'js/JGS.GraphDataProvider.js'
resource url:'js/JGS.Demo1Page.js'
resource url:'js/underscore.js'
resource url:'js/crossfilter.js'
resource url:'js/dc.js'
resource url:'js/prototype.js'
resource url:'js/highcharts.js'
resource url:'js/exporting.js'
}
}
缺少文件“js/jquery-ui-1.10.4.custom.js”,在视图文件中提到并加载该文件时使用:
<g:javascript src="jquery-ui-1.10.4.custom.js"/>
但是,这会引发jquery未定义或冲突错误
我真的需要了解加载文件的正确方法。它是使用ApplicationResources还是在视图中使用g:javascript
JS文件:
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset="utf-8">
<meta content='width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0' name='viewport'>
<title>EWACS Site performance tool</title>
<g:javascript src="d3.v3.min.js"/>
<g:javascript src="jquery-ui-1.10.4.custom.js"/>
<g:javascript src="jQDateRangeSlider-min.js"/>
<g:javascript src="jQDateRangeSlider-withRuler-min.js"/>
<g:javascript src="jQRangeSliderLabel.js"/>
<script>
var $j = jQuery.noConflict()
</script>
<link rel="stylesheet" href="${resource(dir: 'css', file: 'iThing.css')}" type="text/css">
<link rel="stylesheet" href="css/iThing.css" type="text/css" />
<link rel="stylesheet" href="${resource(dir: 'css', file: 'bootstrap.min.css')}" type="text/css">
<link rel="stylesheet" href="${resource(dir: 'css', file: 'dc.css')}" type="text/css">
<link rel="stylesheet" href="${resource(dir: 'css', file: 'main_div.css')}" type="text/css">
<style type="text/css"></style>
<g:javascript src="prototype.js"/>
<g:javascript src="highcharts.js"/>
<g:javascript src="exporting.js"/>
</head>
EWACS站点性能工具
var$j=jQuery.noConflict()
欢迎所有方法/建议请提供进一步信息。使用
标记共享您的应用程序资源.groovy
和您的一个视图文件系统中的js文件在哪里?js文件位于/web app/js中,将立即更新问题。jquery和prototype一起?因此存在问题,但在js文件中,我提到了noconflict并始终使用$j。ApplicationResources.groovy的用途是什么?仅仅在视图中定义js和css文件还不够吗?