我正在使用香草Sass(没有Compass / SUZY / Bourbon /等),而且我在找出放置* .rb文件的位置时遇到了麻烦。我不是Ruby程序员,但我确实找到了别人写的功能,可以满足我的需求。我试过搜索,但我得出的结果是死路一条。
官方文档本身没有提供任何线索,只提供如何创建自定义函数: http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#adding_custom_functions
sass styles.scss styles.css -r custom.rb
LoadError:尝试此解决方案时无法加载此类文件 - static / sass / modules / lib / custom.rb(尽管能够VI文件): http://www.seancolombo.com/2010/07/28/how-to-make-and-use-a-custom-sass-function/
这是我能找到的最接近的SO问题,但我没有使用Compass或Rails,所以解决方案对我没有任何意义: How do I load extensions to the Sass::Script::Functions module?
我想将自定义函数保存在我的模块目录中(其中包含我自己的自定义Bootstrap库)。但如果必须去其他地方,我可以忍受。
答案 0 :(得分:2)
在Rails 4中,它非常简单。在config / initializer /文件夹中创建一个sass.rb文件,并将模块放在那里。
例如,使用此随机函数:https://gist.github.com/chriseppstein/1561650
module Sass::Script::Functions
def random(*args)
#...buncha code
end
end
只需将其粘贴在config / initializers / sass.rb中,您就可以在任何.scss / sass样式表中访问它,例如:
.greet{
position: absolute;
top: random(200px);
left: random(200px);
height: random(200px);
width: random(200px);
background-color: blue;
}
答案 1 :(得分:1)
请尝试按照第二个链接中的说明进行操作,但请指定ruby文件的绝对路径。在我的机器上,如果给出相对路径,看起来SASS在查找文件时遇到问题。