我在寫我的第一個Grails(2.3.6)應用程序,需要使用以下庫:如何在Grails應用程序中正確包含JS庫?
我想這些配置來自web-app/js/application.js
文件的庫。我不知道我是否應該:
- 手動將庫添加到我的
web-app/js/
目錄中,然後導入它們從我的GSP(見下文)內<script>
元素;或 - 將它們從
BuildConfig.groovy
中拉出來。
用前一種方法:
// Inside index.gsp:
<body>
<script type="text/javascript" src="${resource(dir: 'js', file: 'signals.min.js')}" />
<script type="text/javascript" src="${resource(dir: 'js', file: 'crossroads.min.js')}" />
<script type="text/javascript" src="${resource(dir: 'js', file: 'hasher.min.js')}" />
<script type="text/javascript" src="${resource(dir: 'js', file: 'application.js')}" />
</body>
對於後一種方法:
// Inside BuildConfig.groovy:
plugins {
runtime: ":signals:???"
runtime: ":crossroads:???"
runtime: ":hasher:???"
}
哪種方式是去使用Grails,爲什麼以正確的方式?而且,如果後一種方法是普遍接受的方法,那麼每個runtime
條目需要什麼值?
您正在使用的默認下帶有一個Grails應用程序資源插件(直到2.3.9,資源管理的2.4.0默認插件是asset-pipeline)。 ['resources' plugin](http://grails.org/plugin/resources)提供了一套指導方針來有效地管理資源。有關更多詳細信息,請參閱[聲明資源](http://grails-plugins.github.io/grails-resources/guide/3.%20Declaring%20resources.html)doc。 – dmahapatro
Thanks @dmahapatro(+1) - 看起來我需要聲明一個包含所有3個JS庫(Signals,Crossroads和Hasher)的「模塊」,是的?如果是這樣,假設我爲所有3個庫創建了一個包含3個資源的「路由」模塊;我該如何在GSP中包含這個'routing'模塊,以便在頁面加載時可用? – IAmYourFaja
是的。在文檔中轉到[下一頁查看「使用資源」](http://grails-plugins.github.io/grails-resources/guide/4.%20Using%20resources.html)。 :) – dmahapatro