我即将开始一个新项目,我不确定在我的前端使用AngularJS是不是一个好主意。我读到有人说这不是做项目最聪明的方式。即使我这样做,有没有办法让AngularJS与控制器交互?这个问题可能是多余的,但我真的很好奇如何在不浪费时间的情况下有效地做到这一点。
答案 0 :(得分:1)
我从来没有完全做过,但我相信要走的路是构建一个Rails api,然后让一个单独的Angular项目使用api。 api还可用于构建移动应用程序。我认为Angular项目仍然需要从生产中的Node.js服务器提供,但我认为这不会有什么大不了的。
这是我以前学习如何构建Rails api:http://apionrails.icalialabs.com/book/chapter_one
您可以在现有项目中执行此操作并从中共享模型。
答案 1 :(得分:1)
有几种不同的方法可以实现这一目标。我尝试了大约5个不同的指南,我找到的最好的(我最终坚持)是https://thinkster.io/angular-rails - 本指南应该帮助你构建一个基本的CRUD应用程序,角度连接到rails。
您使用Rails作为响应Ajax请求(Get,Post,Put,Delete)的JSON RESTful API。 Angular将处理前端内容 - 将这些Ajax请求发送到rails控制器中定义的路由/方法。所以是的,当然你的AngularJS应用程序可以与你的rails控制器进行交互。
这也帮助我理解了开头的设置:您将使用AngularJS作为您的视图而不是Rails视图:
我真的很喜欢使用angular with rails,因为设置JSON响应(特别是使用Active Model Serializer Gem)非常简单快速。我肯定可以推荐它,而且我没有遇到任何无法解决的问题 - 到目前为止。
只需通过我链接的指南,您就会看到此设置是否符合您的需求。
答案 2 :(得分:0)