Kar*_*ran 10 ruby-on-rails angularjs
我想试试Angularjs.但是,我一直很难决定我应该在哪里找到我的角应用程序.
我正在使用Rails框架作为后端.我已经看过整个角度应用程序位于assets/javascript文件夹下的教程.
我想知道如果不是生活在assets/javascript文件夹中,我可以将它完全放在我的rails目录之外.这样,我可以完全分离我的后端和前端.(这是推荐的吗?).
我相信资产管道也预编译了很多资产.如果我要分离出angularjs资产,我是否需要以某种方式预编译资产?
谢谢
我一直在研究类似的问题.有一些很好的工具可以让你将AngularJS直接集成到你的rails资产管道中,如果你只需要一点Angular,它们对我看起来很好.
但是,如果你想要一个完整的Angular前端,也就是一个单页面的web应用程序,我想你最终会受到兼容性和一些工具的限制.我觉得Rails宝石不会跟上Angular,所以你会遇到版本冲突.我也看到越来越多的Angular工具作为一个独立工具,我非常喜欢ng-boilerplate项目模板.我也喜欢很多测试工具,比如karma,而我还没有真正找到一种将karma与rails集成的方法.
出于这个原因,我最终决定将两者分开.最初,我通过创建rails应用程序和单独的角度应用程序(单独的目录)来做到这一点.我使用ng-boilerplate作为角端的框架.我写了一个教程.这最终有点令人沮丧,我写了一些关于它的想法,主要的烦恼是我有两个git存储库,让它们保持同步很烦人.在两个目录中使用IDE也很烦人.我最终转移到rails和angular在同一个文件夹中,它们看起来很好玩,因为每个使用该项目中的不同目录.
在这个当前的结构中,我使用ng-boilerplate附带的grunt设置来缩小所有代码,打包它并运行karma单元测试.我还没有确定端到端的测试,但它在我的列表中.我发现这是一个相对富有成效的工作环境.我选择的页面,控制器和业力测试用例的结构有一些重复的代码(我选择不考虑它以保持可读性).我正计划扩展rails scaffold生成器为我创建javascript框架 - 所以当我创建一个人的rails scaffold时,它也会为我创建一个人angularjs脚手架.如果我做这项工作,我会在这里更新.
编辑:我也完成了脚手架工作,它允许rails生成rails模型/控制器等时自动生成angularJS元素.博客文章在这里:http://technpol.wordpress.com/2013/09/24 /导轨发电机到产生棱角的视图/
您可以使用基于grunt的工作流程:
如果你从一个解耦的前端开始,首先使用模拟,这样你就可以保持在角度内,而不会失去后端和前端逻辑之间的焦点切换.构建单页面应用程序的一个优点是可以独立于后端api开发它.有关模拟http响应的信息,请参阅(http://docs.angularjs.org/api/ngMockE2E.$ httpBackend).
| 归档时间: |
|
| 查看次数: |
3238 次 |
| 最近记录: |