Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在rails中添加javascript函数_Javascript_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

如何在rails中添加javascript函数

如何在rails中添加javascript函数,javascript,ruby-on-rails,ruby-on-rails-4,Javascript,Ruby On Rails,Ruby On Rails 4,我正在开发我的第一个rails应用程序我有一个名为article的控制器,每个动作有5个动作,每个动作都有一个查看页面。如何在article.coffee文件中为某个动作添加JavaScript函数 将文件重命名为action.js.coffee 然后 只需将动作绑定到动作控制器视图的元素上 如果您没有使用--skip链轮选项启动projet,请参阅详细信息 rails new myapp --skip-sprocket 资产管道应该是启用的,这意味着您应该有如下所示的文件: ... /

我正在开发我的第一个rails应用程序我有一个名为article的控制器,每个动作有5个动作,每个动作都有一个查看页面。如何在article.coffee文件中为某个动作添加JavaScript函数

  • 将文件重命名为
    action.js.coffee
然后

  • 只需将动作绑定到动作控制器视图的元素上
如果您没有使用--skip链轮选项启动projet,请参阅详细信息

rails new myapp --skip-sprocket
资产管道应该是启用的,这意味着您应该有如下所示的文件:

...
//= require turbolinks
//= require_tree .

function greatTutorial() {
    alert('Rails Guides are the best');
}
<h1 onclick="greatTutorial()">Hello World</h1>
Gemfile

...
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.1.0'
# gem 'therubyracer', platforms: :ruby
gem 'jquery-rails'
gem 'turbolinks'
...
application.html.erb

...
  <title>myapp</title>
  <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true %>
  <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
  <%= csrf_meta_tags %>
...
然后您可以在视图中调用此函数,如下所示:

...
//= require turbolinks
//= require_tree .

function greatTutorial() {
    alert('Rails Guides are the best');
}
<h1 onclick="greatTutorial()">Hello World</h1>
你好,世界

如果您想用Vanilla JS(意思是基本JavaScript,没有咖啡或任何预处理器)编写,请将JS文件以“.JS”结尾,但如果您想用CoffeeScript编写,请将其以“.JS.Coffee”结尾,以便在渲染之前进行预处理。我建议您阅读关于资产管道的文章,了解Rails是如何处理资产的。希望这能帮助您入门。

据我所知,咖啡脚本不是Javascript。然而,你可以通过在任何你想包含你的JS的地方寻找你的JS来使用vanilla JS和rails。你能给我举个例子吗?我有一个名为article的控制器,还有一个名为new的操作,即如何在新视图页面上添加javascript函数