[英]How to properly include JS libs inside a Grails app?
我正在編寫我的第一個Grails(2.3.6)應用程序,需要使用以下庫:
我想從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
條目都需要什么值?
就個人而言,如果您認為這些庫非常適合社區並且想要維護它們,那么我只會走插件路線。 似乎您應該使用上面提到的資源插件或資產管道插件。
我個人肯定會使用資產管道插件而不是資源。 這將是2.4和恕我直言的默認方式,使用起來更簡單,更快捷。 許多其他插件已經與它集成在一起,並且使用起來非常簡單。 您還可以添加完整的非最小版本的庫,以便在開發時可以訪問它們進行調試,並且在啟動項目時,插件將自動為您壓縮並捆綁它們。
1)將您的庫添加到/ assets / js /。 2)將此添加到application.js
//This is a javascript file with its top level require directives
//= require signals.js
//= require crossroads.js
//= require hasher.js
//= require_self
console.log("This is my javascript manifest");
3)將資產添加到您的頁面或布局
<head>
<asset:javascript src="application.js"/>
</head>
在Grails 2中沒有資產管道,並且要解決資產管道問題(例如CKEditor),我必須在我的appLayout中執行<g:javascript src="ckeditor/ckeditor"></g>
,然后添加庫到web-app / js。 (顯然,CKE在資產管道方面存在問題)。
這是文檔(Grails v.2.3.7): https ://grails.github.io/grails2-doc/2.3.7/ref/Tags/javascript.html
我還發現此鏈接非常有幫助: 我應該將JavaScript庫放在Grails應用程序的哪里?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.