我一直在使用带有Rails的Angularjs,当我进一步深入研究时,我发现Rails和Angularjs都将角色视为单独的应用程序。我也尝试了一些Yeoman,我非常喜欢它 - 我尝试使用yeoman在我的Rails应用程序的assets子目录中构建一个应用程序,但它创建了太多东西
我正在考虑将它拆分并使用json前端创建我的Rails应用程序并创建一个单独的Angular应用程序,使用Yeoman构建它并将完成的Angularjs应用程序放在我的assets子目录中并做一些整理
这是否有意义?
其他人这样做了吗?
任何提示?
答案 0 :(得分:8)
你是对的,因为后端Rails和前端SPA不应该作为单个项目开发。它们应该独立开发,并且还要独立测试。理想情况下,在staging env和集成e2e测试之外,它们之间不应该有直接的交互。
另一件事是您不需要将角度应用程序放在公共目录中。很可能你会让Passenger / Unicorn / Puma服务你的Rails应用程序,而且他们没有必要为你的Angular应用程序提供服务。最好直接从像NginX这样的强化网络服务器上提供它们。它们不仅速度更快,而且更易于配置。这使您甚至可以设置自定义CDN,从而进一步加快网站的响应时间。
Yeoman发电机正是为此而制造的。如果您要同时构建SPA和Rails,则不需要所有这些Grunt任务来转换LESS / Coffee / Jade等; Rails会自动为你做这些。它们旨在简化开发SPA而无需完整的服务器环境。