在我的ApplicationResources.groovy中我有
modules = {
common {
dependsOn('jquery')
resource url: 'js/jquery.datetimepicker.js'
resource url: 'css/jquery.datetimepicker.css'
}
}
我的index.gps有这个头脑
<r:require modules="common"/>
在我的layout.gsp中:
<r:layoutResources/>
但是当我使用
时,它给了我这个错误:Uncaught TypeError: Object [object Object] has no method 'datetimepicker'
<script>
$('#datetimepicker').datetimepicker();
</script>
,另一个错误是我使用It looks like you are missing some calls to the r:layoutResources tag. After rendering your page the following have not been rendered: [defer]
:
<r:script>
$('#datetimepicker').datetimepicker();
</r:script>
我对r:script vs script感到困惑。有什么我想念的吗?当我正在检查时,只加载jquery和css。
答案 0 :(得分:3)
您的布局GSP中需要两个单独的<r:layoutResources/>
实例,一个位于</head>
之前,另一个位于</body>
之前。第一个将使用“head”处理来渲染资源,第二个将使用“defer”渲染那些资源。
由于layoutResources
标记位于头部/正文的末尾,因此生成的脚本标记或CSS链接将显示在您定义的任何普通<script>
之后。但<r:script>
将排队等候<r:layoutResources/>
以适当的处置方式输出, 后,它已呈现<r:require>
请求的资源。