我想在我的Ruby文件中从Sass调用compile_file
。当我做的时候
compile_file("file.scss", options)
我收到错误:undefined method 'compile_file.'
我错过了require
或者说错了吗?安装了Sass,当我在终端启动时,我可以正常观看它。我希望能够在我不看的时候自己打电话给compile_file
。有人可以通过传入文件名和对象来为我提供关于如何在Ruby中使用Sass compile_file
的示例代码吗?
答案 0 :(得分:0)
我不了解Sass,但一般来说,您需要使用方法Sass::compile_file
的完全限定名称或要求将模块放入全局空间:require 'sass'
答案 1 :(得分:0)
尝试类似
的内容require 'rubygems'
require 'sass'
puts 'methods available: ' + (Sass.methods.sort - Object.methods).inspect
Sass.compile_file
答案 2 :(得分:0)
在使用require 'sass'
之前安装Sass:
sudo gem install sass
现在创建一个文件test.rb
:
#!/usr/bin/ruby
require 'sass'
puts Sass::compile_file('./colors.scss')
(做chmod +x test.rb
)
现在使用colors.scss
:
$color: blue !default;
p {
color: $color;
}
运行./test.rb
将输出:
p {
color: blue; }
根据the docs,您应该使用Sass::Engine
:
在Ruby代码中使用Sass非常简单。安装Sass宝石后, 您可以通过运行require“sass”并使用Sass :: Engine来使用它。
#!/usr/bin/ruby
require 'sass'
sass_engine = Sass::Engine.for_file('./colors.scss', :syntax => :scss)
output = sass_engine.render
puts output