ruby-on-rails - 如何在 Rails 中停止样式表自动链接?

标签 ruby-on-rails css ruby asset-pipeline sprockets

默认情况下(至少,使用脚手架),Rails 在 /app/assets/stylesheets 目录中添加所有样式表的链接。我想要多个较小的样式表用于组织,但只需要链接到一个导入其余样式表的样式表,以便保持组织性并最大限度地减少 HTTP 请求。

有没有办法禁用这种自动包含,无论是通过配置 Assets 管道还是更改它们在布局本身中的包含方式?

FWIW,我使用 stylesheet_link_tag "application" 包括来自 application.html.haml 的主要样式表。

最佳答案

您可以通过修改您的application.css(.scss) 文件来做到这一点。

在该文件中将有以下行:

require_tree .

只需删除它并用您需要的包含替换它。

application.css

require file1
require nested/folders/file2

然后你可以有另一个文件

ma​​in.css

require file2
require file3

并分别包含它们:

stylesheet_link_tag "application"  
stylesheet_link_tag "main"

stylesheet_link_tag 也可以采用数组,如果出于某种原因您希望 css 文件加载到同一位置,但使用单独的 HTTP 请求。

stylesheet_link_tag ["application", "main"]

带有要求的文件称为manifest files .

关于ruby-on-rails - 如何在 Rails 中停止样式表自动链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8566561/

相关文章:

ruby-on-rails - 从脚手架调用自定义 erb 生成器

ruby-on-rails - 什么是 rake db :test:prepare actually do?

javascript - Facebook 找到了修复移动滚动的方法

Ruby/Sinatra - 使用 Helper *类也可以使用 Sinatra 设置

ruby - 用 ruby​​ 将字符串数组变成一个句子

ruby-on-rails - 类 `arel_attributes_values' 的未定义方法 `ActiveRecord::Base'

ruby-on-rails - rails : How to add scope to pg_search with location search?

html - 隐藏的 CSS 工具提示框

html - CSS 表 : changing background on hover, 包括替代行

ruby-on-rails - Ruby on Rails,创建方法