【问题标题】:Asset file being loaded automatically in Rails app在 Rails 应用程序中自动加载资产文件
【发布时间】:2014-08-19 18:29:58
【问题描述】:

我正在使用 Twitter Bootstrap 制作一个 Rails 应用程序。一切正常。现在,我在“app/assets/stylesheets”文件夹中添加了一个“custom.css”文件。该文件是空白的。还是一切都很好。现在我为“.btn”类添加了一个自定义设置。现在,当我刷新网页时,会显示更改按钮。我没有在任何项目的 HTML(或其他任何地方)中添加“custom.css”文件。

所以,我的问题是,为什么“custom.css”文件会自动加载到我的网络应用程序中?无论我添加到“app/assets/stylesheets”文件夹中的什么文件,它都会自动加载,这是默认行为吗?

【问题讨论】:

标签: html css ruby-on-rails twitter-bootstrap


【解决方案1】:

在您的默认 application.css 文件中,除非您将其删除,否则您将拥有这样的一行:

 *= require_tree .

这递归地包括app/assets/stylesheets下的所有样式表。

如果您不想要这种行为,请删除该行,并使用以下内容明确包含您确实需要的每个样式表:

 *= require_self
 *= require foo
 *= require bar

【讨论】:

  • 啊,我明白了!现在我注意到 JavaScript 的“application.js”中有类似的行。
  • 但似乎 "*= require_tree 。"部分被评论。我错了吗?
  • 这:/* ... */ 是一个 CSS 注释,正确。但是application.css 中的第一个注释块也用作清单,具有特殊的*= 语法,用于引用资产管道要编译的其他文件。
【解决方案2】:

是的,你是对的。在您的 application.css 中,您有类似的内容:

*= require_tree 

这包括您的 app/assets/stylesheets 文件夹中的所有文件。

【讨论】:

    猜你喜欢
    • 2013-03-14
    • 1970-01-01
    • 2019-02-23
    • 2017-01-10
    • 2015-12-30
    • 2017-05-23
    • 1970-01-01
    • 2020-09-14
    • 1970-01-01
    相关资源
    最近更新 更多