Rails Asset Pipeline / Compass / SASS在开发模式下编译速度极慢

时间:2013-04-30 01:35:18

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

使用Rails 3.2,我的应用程序中加载了大约40个SASS文件。其中很大一部分是引导程序。

任何页面的每次重新加载都需要10秒以上。如果我几乎立即删除了<%= stylesheet_link_tag "application", :media => "all" %>页面。

调试哪些样式表导致缓慢的最佳方法是什么?或者只是我有40多个部分.css.scss文件才能在页面刷新时编译?

我在几乎每个.scss文件的顶部都有一个@import“mixins”,它会加载一些基色变量。不确定这是否会减慢速度,也不知道如何让所有.scss文件中的这些基色可用于任何其他方式......

我想在使用live-reload gem之前解决这个问题,如下所述:http://blog.55minutes.com/2013/01/lightning-fast-sass-reloading-in-rails-32/

2 个答案:

答案 0 :(得分:1)

这个宝石会有所帮助:

gem 'rails-dev-tweaks', '~> 0.6.1'

SOURCE

答案 1 :(得分:0)

事实证明,fredwu在rails github上指出了一个问题:

  

我认为Sprockets的解析器存在问题:   https://github.com/sstephenson/sprockets/blob/v2.2.2/lib/sprockets/trail.rb#L70-L83

     

Rails .12手动解析资产路径,而.13尝试使用   链轮解析器,然后抛出异常。

临时问题是在gemfile中使用以下行:

gem 'rails', git: "git://github.com/rails/rails.git", branch: "3-2-stable"

https://github.com/rails/rails/issues/9803