在Rails中需要javascript和CSS,而不直接将代码注入HEAD元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Rails中需要javascript和CSS,而不直接将代码注入HEAD元素相关的知识,希望对你有一定的参考价值。

I used to directly inject javascript and CSS into my HEAD elements just like you see in all of the tutorials online and in books. Recently I decided to try a different approach, and I feel this is more in keeping with the ruby and rails "declaration" syntax. It has the added benefit of promoting unobtrusive javascript coding and factoring out page-specific CSS into its own file.
  1. [application_helper.rb]
  2. module ApplicationHelper
  3. def requires_javascript(path)
  4. content_for :page_dependencies do
  5. javascript_include_tag path
  6. end
  7. end
  8.  
  9. def requires_stylesheet(path)
  10. content_for :page_dependencies do
  11. stylesheet_link_tag path
  12. end
  13. end
  14. end
  15.  
  16. [my_layout.html.erb]
  17. <html>
  18. <head>
  19. <%= yield :page_dependencies %>
  20. ...
  21. </head>
  22. ...
  23. </html>
  24.  
  25. [my_view.html.erb]
  26. <% requires_javascript "my-view-specific-javascript" %>
  27. <% requires_stylesheet "my-view-specific-stylesheet" %>

以上是关于在Rails中需要javascript和CSS,而不直接将代码注入HEAD元素的主要内容,如果未能解决你的问题,请参考以下文章

在 Rails 中去除内联 CSS 和 JavaScript

在 Rails 中使用 HAML 而不是 ERB 时 CSS 未加载 (404)

如何在 css 类名中使用 javascript 变量并在 Rails 中通过 jquery 获取 css 颜色名

22--Rails快速入门总结

Rails 3.1 资产管道和手动订购的 Javascript 需要

为啥在rails中链接css中的图像时使用ASSET_PATH而不是Image-url