如何在预编译期间包含自定义SASS功能?

时间:2012-01-30 23:20:41

标签: ruby-on-rails ruby ruby-on-rails-3.1 sass precompile

我已经使用Ruby代码(http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#adding_custom_functions)成功扩展了一些SASS函数,并且我的扩展在开发中正确加载,但是当我预编译我的资产时,不会加载扩展名。代码存在于/ app / models中,但这可能不是最适合它的地方。

我已尝试在几个不同的配置文件中明确要求该文件,但在预编译期间仍然无法加载。这似乎也是一种糟糕的做法。

我知道代码无法加载,因为预编译的CSS以明文形式将CSS中的函数名留下。没有错误。

所以:这样的文件最适合居住的地方,以及如何在预编译期间获得SASS加载文件?

1 个答案:

答案 0 :(得分:2)

问题最终是因为我要求文件不正确,使用的是配置根而不是app root。假设在尝试包含不存在的文件时会抛出错误,但显然不是。有一次,我在config / application.rb中正确地需要文件,预编译能够访问我的SASS扩展

require "#{Rails.root}/lib/assets/colorable.rb"