相关疑难解决方法(0)

使用Rails 3.1,您在哪里放置"特定于页面"的JavaScript代码?

据我所知,您的所有JavaScript都合并为1个文件.当Rails添加//= require_tree .application.js清单文件的底部时,默认情况下会执行此操作.

这听起来像是一个真正的生命保护程序,但我有点担心特定于页面的JavaScript代码.此代码是否在每个页面上执行?我想要的最后一件事是,只需要在1页上需要为每个页面实例化我的所有对象.

此外,代码是否也存在冲突的可能性?

或者你是否script在页面底部放了一个小标签,只是调用一个执行页面javascript代码的方法?

那你不再需要require.js了吗?

谢谢

编辑:我很感谢所有的答案......我认为他们并没有真正解决问题.其中一些是关于造型而且似乎没有关联...而其他人只是提到javascript_include_tag......我知道存在(显然......)但是看起来Rails 3.1的方式将会包括所有的将您的JavaScript编入1个文件,而不是在每个页面的底部加载单独的JavaScript.

我能想到的最好的解决方案是divids或classes 包装标签中的某些功能.在JavaScript代码,你只要检查idclass在页面上,如果是,您在运行与之相关联的JavaScript代码.这样,如果动态元素不在页面上,则JavaScript代码不会运行 - 即使它已包含在application.js由Sprockets打包的大量文件中.

我的上述解决方案的好处是,如果在100个页面中的8个页面中包含搜索框,则它将仅在这8个页面上运行.您也不必在网站的8个页面上包含相同的代码.实际上,您永远不必在任何地方再次在您的网站上包含手动脚本标记.

我认为这是我问题的实际答案.

javascript ruby-on-rails ruby-on-rails-3.1 sprockets asset-pipeline

386
推荐指数
11
解决办法
8万
查看次数

如何在Rails 3.2.1中使用特定于控制器的样式表?

使用Rails 3.2.1


我使用命令创建了一个名为Home的简单控制器:

rails g controller Home index
Run Code Online (Sandbox Code Playgroud)

它为我创建了一个新的控制器和视图:

在此输入图像描述

注意有两个样式表,一个是"应用程序",另一个是"主页".我找不到任何文档来支持这个假设,但我猜你把样式只应用于Home.css.scss文件中的"Home"视图,对吗?

因此,作为测试,我在Application.css.scss.erb中添加了一些全局样式并运行了应用程序.

样式按预期应用.

接下来,我在Home.css.scss文件中添加了一些规则,并访问了一个"Home/index"视图,但该文件中的样式未附加,既不作为单独的CSS引用链接,也不附加到单个Application.css.scss文件.这对我来说非常困惑,因为评论说:

// Place all the styles related to the Home controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/
Run Code Online (Sandbox Code Playgroud)

为什么Home.css.scss中写的规则不适用于我的网站?

css ruby-on-rails sass ruby-on-rails-3.1

22
推荐指数
4
解决办法
2万
查看次数

使用Rails应用程序的页面特定CSS

我想为我的Rails应用程序测试两个不同的接口.理想情况下,我希望有两个单独的css文件,一个与每个接口相关联(例如,new_interface.css和old_interface.css).我目前有两个不同的接口部分,一个叫_new_interface.html.erb,一个叫_old_interface.html.erb.如果我想在加载特定视图时调用正确的css文件,我该怎么做?例如,如果我加载_new_interface.html.erb,我希望它加载new_interface.css文件并忽略old_interface.css文件.

我的application.css:

/*
*= require_tree
*/
Run Code Online (Sandbox Code Playgroud)

css ruby-on-rails

5
推荐指数
1
解决办法
1万
查看次数