相关疑难解决方法(0)

在Rails 3应用程序中添加特定于页面的JavaScript的最佳方法?

Rails 3有一些不引人注目的JavaScript,非常酷.

但我想知道最好的方法是为特定页面添加额外的JavaScript.

例如,我之前可能做过的事情:

<%= f.radio_button :rating, 'positive', :onclick => "$('some_div').show();" %>
Run Code Online (Sandbox Code Playgroud)

我们现在可以用类似的东西使它不引人注目

<%= f.radio_button :rating, 'positive' %>

# then in some other file
$('user_rating_positive').click(function() {
  $('some_div').show();
}
Run Code Online (Sandbox Code Playgroud)

所以我想我的问题是在哪里/如何包含JavaScript?我不想填写该application.js文件,因为此JavaScript仅适用于此视图.我应该以某种方式为每个页面包含一个自定义JavaScript文件,还是将其粘贴在标题所查找的实例变量中?

javascript ruby-on-rails ruby-on-rails-3

157
推荐指数
6
解决办法
8万
查看次数

如何将CoffeeScript文件与视图相关联?

刚刚安装了rails 3.1 rc1,我试图用新资产管道来管理javascript的最佳方法默认情况下,所有coffeescript都被编译成一个application.js文件,这是一件好事.

每个单独的咖啡脚本文件都附加到js文件并包装在一个匿名函数中,该函数通过调用方法执行.常见的场景是使用一些jquery将各种表单转换为ajax表单,更新UI等...

这些脚本中的许多都是特定于控制器或动作的,我试图用"常规"方式来处理这个,因为所有内容都包含在一个匿名函数中,我如何只执行特定控制器/动作的代码,默认情况下,正在执行所有匿名函数

我确实玩了一些hacks,我将控制器和动作名称加载到js变量中,然后在coffeescript中检查那些有条件地运行代码,我不是很喜欢

我最初的想法是每个咖啡文件都包含一个js命名空间/对象,我会从视图中调用特定的那些,使用default_bare = true配置来调用它

请参阅如何在Rails 3.1 for CoffeeScript中使用选项"--bare"?

编辑

再看一些:看起来这可能是正确的方法 - 使用Rails 3.1和Coffeescript"找不到变量"错误

coffeescript ruby-on-rails-3.1

16
推荐指数
1
解决办法
3445
查看次数