Grails application.js没有执行

时间:2014-05-29 17:09:24

标签: javascript grails asset-pipeline grails-plugin

我有一个Grails(2.3.6)应用程序,并且已将asset-pipeline插件作为依赖项包含在内。在我的Config.groovy

plugins {
    // Lots of other stuff

    compile ":asset-pipeline:1.8.7"
}

myapp/web-app/js/application.js(由Grails为我生成)中,我只有以下单行代码:

alert("Hello!");

然后在我的grails-app/views/index.gsp

<html>
    <head>
        <asset:javascript src="application.js" />
    </head>
    <body>
        ...
    </body>
</html>

当我执行grails run-app时,我看不到我的JS alert(...)语句。我是否错误地定位了application.js文件?我是否错误地配置了asset-pipeline插件?还有别的我做错了?我只是想看看我的警报箱!

此外,在“把CSS放在顶部,JS在底部”约定之后,我想知道是否有人可以讨论如何将application.js重新定位到显示在<body/>标记的底部。我的理解是asset-pipeline资产仅在<head/>内部工作。

2 个答案:

答案 0 :(得分:1)

你的静态文件是grails-app / assets /。有关详细信息,请参阅organization

答案 1 :(得分:1)

根据asset-pipeline插件的documentation,您的资产应该在grails-app / assets /目录结构下。每种类型的资产都位于子文件夹下,如下所示:

grails-app/assets/javascripts
grails-app/assets/images
grails-app/assets/stylesheets

将您的application.js移动到javascripts目录中以进行资产管道传输。