我正在编写我的第一个 Grails (2.3.6) 应用程序,需要使用以下库:
我想从 web-app/js/application.js
内部配置这些库文件。我不确定我是否应该:
- 手动将库添加到我的
web-app/js/
目录,然后将它们导入为<script>
来 self 的普惠制内部的元素(见下文);或 - 将它们从
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
需要什么值?条目?
请您参考如下方法:
就我个人而言,如果您认为这些库非常适合社区并且您想要维护它们,我只会采用插件路线。看来您应该使用提到的资源插件或 Assets 管道插件。
就我个人而言,我肯定会使用 Assets 管道插件而不是资源。它将成为 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>