Loading Javascript per controller in rails

前端 未结 2 1794
佛祖请我去吃肉
佛祖请我去吃肉 2021-02-14 00:51

JavaScript file per view in Rails

I looked into similar threads, but i am not able to catch. Below is my application.js file.

//= require jquery
//= requ         


        
2条回答
  •  感情败类
    2021-02-14 01:09

    As pointed out by Dave you can use the proposed solution to his linked question, i.e. by doing:

    <%= javascript_include_tag params[:controller] %> 
    

    The only thing you'd have to remember to do this is to name your javascript assets the names of the controllers - so home.js and sessions.js in your case (if I remember Rails' naming conventions correctly).

    I have seen other ways of doing this though, which is useful if you want to include some javascript on pages associated with different controllers for whatever reason. This answer, I think, gives a very elegant solution.

    First off, add the global javascripts to your manifest file, and include that in your application.html.erb layout file.

    
    
      # stuff
      <%= javascript_include_tag 'application' %>
      <%= yield :javascripts %>
    
    
     <%= yield :content %>
    
    
    

    And then in the views where you would load specific javascripts simply add the following:

    <% content_for :javascripts do %>
      <%= javascript_include_tag 'your_script' %>
    <% end %>
    

提交回复
热议问题