gpt4 book ai didi

javascript - 为什么 Ruby on Rails 不支持页面特定的 javascript/css?

转载 作者:行者123 更新时间:2023-11-28 09:26:01 25 4
gpt4 key购买 nike

通常,当我必须解决 RoR 没有直接解决方案的问题时,那是因为我没有遵守最佳实践。我是 RoR(和网络开发人员)的新手,我需要一种在特定页面上包含 javascript 的方法。快速搜索后,我发现了许多不同的解决方案,每个都有自己的优点/缺点,但没有一个真正解决为什么这不是 RoR 中的功能。我理解合并/缩小所有文件的好处,但作为新手,这似乎是 Assets 管道固有的一个明显特征。为什么 Ruby on Rails 不支持页面特定的 javascript/css?如果我发现自己在编写特定于页面的 javascript/css,我是否没有遵循某些最佳实践?

提前感谢您的智慧!

最佳答案

它确实支持它。您只是不需要通过 application.js 中的 sprocket 和 assets.precompile 配置选项的额外文件

#layouts/application.html
<head><%= yield(:js) %></head>

#views/specific/index.html.erb
<% content_for(:js) do %>
<%= javascript_include_tag 'specific' %>
<% end %>

#config/environments/production.rb
config.assets.precompile += ['specific.js']

#assets folder
- assets
- javascripts
- application.js
- specific.js

您还可以将以下正则表达式放入 assets.precompile 中,以便单独预编译所有 javascript(不以 underscopre 开头)

 config.assets.precompile << /(^[^_\/]|\/[^_])[^\/]*$/

另见 4.1 Precompiling Assets

关于javascript - 为什么 Ruby on Rails 不支持页面特定的 javascript/css?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25879763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com