Rails - 为AngularJS应用程序包含移动和桌面的不同资产?

时间:2014-05-03 00:08:56

标签: ruby-on-rails angularjs twitter-bootstrap ionic-framework

如何为为手机设计的AngularJS视图和从Rails API为桌面设计的AngularJS视图添加一组不同的资源(CSS和JavaScript)?默认模板(application.html.erb或index.html)通常只会使用初始请求加载一次,因为它是一个AngularJS应用程序,所以我不认为Rails的常用桌面与移动解决方案应用程序将起作用。

具体来说,我正在尝试将使用AngularJS,Bootstrap和jQuery的桌面应用程序与使用AngularJS和Ionic的移动应用程序相结合。除视图外,这两个应用程序大多数都有共享代码。观点将大不相同,因此响应方法是不够的。我根本找不到这方面的指导。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:6)

Rails 4.1提供variants,以便您可以根据显示类型使用不同的视图模板。这是一个更彻底的example。它是最近的,所以关于它们还不是很多。

如果您不在4.1上,可以使用Mobylette gem来实现same thing。然后,您还可以拥有包含不同资产的完全不同的application.mobile.erb

如果要翻转您所包含的资产,您还可以看一下(帮助方法部分),但这不能解决整个问题的不同视图集的问题: / p>

Mobile style switching in Rails 3, helper method vs media queries