【问题标题】:Rails Minified (Compiled) Assets in development mode开发模式下的 Rails 缩小(编译)资产
【发布时间】:2012-10-19 02:17:52
【问题描述】:

如何在 Rails 开发模式下以缩小(编译)形式呈现我的资产?

我有大约几十个资产文件,因为它们是一个接一个地提供的,所以在开发页面加载之前需要很长时间。我相信,如果我将它们编译并从中获得服务,将加快我的页面加载时间(我知道当我专门处理资产时这并不理想)。

这是我在布局中的样式和脚本标签

<%= stylesheet_link_tag 'all'  %>
<%= javascript_include_tag 'all' %>

我也跑过bundle exec rake assets:precompile:nondigest

但我仍然看到资产一个接一个地被渲染。请帮忙!

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3.2 asset-pipeline


    【解决方案1】:

    这很简单。
    您只需在config/environments/development.rb 中添加/更改以下行

    config.assets.debug = false
    

    然后重启你的 Rails 服务器。

    【讨论】:

    • 我仍然不得不提到 stylesheet_link_tag 和 javascript_include_tag 调用上的 :debug => false 。您能否确认您能够在不明确设置 :debug false 的情况下使其正常工作?
    • 当然。我有相同的配置。
    • 如果我设置 :debug => false,它也不需要 config.assets.compress = true !那就奇怪了
    • 这个答案不正确。你不想打开压缩,你想关闭调试模式。在你的 development.rb 中关闭调试模式:config.assets.debug = false.
    • 完美运行。我需要切换它,以便我可以在 IE8 中进行测试(这限制了它将加载的样式表的数量)。
    【解决方案2】:

    On Rails 4.2.1 使用此配置:

    config.assets.js_compressor = :uglifier
    config.assets.css_compressor = :sass
    config.assets.compile = true
    config.assets.digest = true
    # config.assets.debug = true
    

    使用此配置,precompile 将在 development 环境中将所有 JS 和 CSS 文件缩小到我。

    【讨论】:

      猜你喜欢
      • 2012-12-26
      • 1970-01-01
      • 1970-01-01
      • 2012-02-15
      • 1970-01-01
      • 2011-12-22
      • 1970-01-01
      • 2012-01-02
      • 2014-10-02
      相关资源
      最近更新 更多