最佳实践,包括 Grails 中的 Angular UI
Posted
技术标签:
【中文标题】最佳实践,包括 Grails 中的 Angular UI【英文标题】:Best practice including Angular UI in Grails 【发布时间】:2014-04-25 15:21:46 【问题描述】:我想在我的 grails 应用程序http://angular-ui.github.io/ui-calendar/ 中使用以下插件。下载包含一个 bower.json 来解决必要的依赖关系:
"dependencies":
"angular": "~1.2.x",
"jquery": "~2.x",
"jquery-ui": "~1.10.3",
"fullcalendar": "~1.x","devDependencies":
"angular-mocks": "~1.x",
"bootstrap-css": "2.3.1"
将其包含在 grails 项目中的最佳做法是什么,因为我认为手动添加所有这些文件不是可行的方法。
【问题讨论】:
你可以像往常一样从命令行使用 bower。不确定是否有 Bower 插件 我也会考虑将架构解耦,这样您就不会混合两个生态系统。让 Grails 成为后端服务项目,让 Angular 成为使用它的丰富的前端客户端。 目前我们有一个 grails API 作为后端。但是对于实际的应用,我们仍然需要一些 grails。 【参考方案1】:我做的事情
我不确定这是否是最佳实践,但正如 @Igor Artamonov
提到的,我正在使用 bower(在 web-app
文件夹中)管理我的客户端代码,现在它只是一个开发时间过程,并且在完成 bower install
之后然后在ApplicationRecources.groovy
中引用实际必要的文件,然后使用 grails 插件将其最小化、混淆等。
权衡是使用bower
安装的文件包含许多不必要的内容,并且通常会暴露出来,这不是您需要的。但是使用spring security
之类的东西可以阻止对这些文件的访问。
在 node.js 中
在node.js
项目中,我将有Grunt
任务将开发资产准备到生产资产并将它们放在某个地方,而生产版本甚至以前都没有安装过东西。
其他想法
所以我的猜测是我仍然需要一个永远不会投入生产的watched
目录,并且在那里进行某些更改后,必要的资产在经过优化、混淆等之后被复制到web-app
文件夹。也许除了bower
我也应该介绍一下grunt
任务,也许需要一个新插件,但那是为了将来。
【讨论】:
以上是关于最佳实践,包括 Grails 中的 Angular UI的主要内容,如果未能解决你的问题,请参考以下文章