css - 如何从Rails的application.scss加载中排除.css文件?

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

我有YooTheme和Bootstrap,它们互相干扰。设计师将YooTheme用于主页,而我没有时间翻译它。如何只为索引页包括yootheme.css,并在其他地方从标题中排除它?我有application.haml-布局

/ UIkit CSS
-# %link{:rel => "stylesheet", :href => "https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.0-beta.30/css/uikit.min.css"}/
%link{:rel => "stylesheet", :crossorigin => "anonymous", :href => "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css", :integrity => "sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ"}/
= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' 
application.scss
 *= require_tree .
 *= require_self
app/assets/stylesheets/yootheme.cssindex.haml
=stylesheet_link_tag 'yootheme.css', media: :all

最佳答案

您可以使用 sprockets#stub 和文件名排除在application.css文件中,以防止其加载:

*= stub yootheme.css

然后要手动合并,您必须将文件添加到assets.rb中,重新启动服务器,然后使用stylesheet_link_tag帮助程序自行加载文件:
# config/initializers/assets.rb
# Rails.application.config.assets.precompile += %w( yootheme.css )

# view
= stylesheet_link_tag 'yootheme.css', media: :all

关于css - 如何从Rails的application.scss加载中排除.css文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46327691/

相关文章:

css - 在此元素内居中文本/覆盖死 Angular ?

ruby-on-rails - 为什么 Fixture_file_upload 在 RSpec 中不可用(没有 ActiveRecord)?

Turbolinks 缓存前后的 Javascript DOM 事件

html - 如何垂直对齐填充页面的容器中的图像?

css - 覆盖最后应用的标记为 !important 的内容? (如果可能的话)

javascript - 如何使用 JQuery 添加 number_field_tag 的值

ruby-on-rails - cucumber 与 RSpec

ruby-on-rails - Rails 5,Rspec : Environment data not found in the schema

javascript - 在全日历选择回调中停止传播

javascript - 使 Canvas 具有形状响应