使用sinatra和haml从新的sass格式(scss)生成css文件

Ben*_*Ben 6 ruby haml sass sinatra

我正在写一个带有haml和sass的sinatra应用程序.当我尝试使用位于我的views文件夹中的scss扩展名链接样式表时,我收到以下错误:/nav.css中的NoMethodError未定义方法`scss'

这是我的get方法

get '/nav.css' do 
    content_type 'text/css', :charset => 'utf-8'
    scss :nav
end
Run Code Online (Sandbox Code Playgroud)

当我切换到较旧的sass语法时,我才能使用它.我还必须将nav.scss更改为nav.sass,将get方法更改为sass:nav

我也尝试过使用sass:nav with nav.scss和sass:nav with nav.sass但仍然是scss语法

小智 13

我不使用README中的上述代码,只需在更新gem后将以下内容放入app.rb文件中.

get '/stylesheets/:name.css' do
 content_type 'text/css', :charset => 'utf-8'
 scss(:"stylesheets/#{params[:name]}")
end
Run Code Online (Sandbox Code Playgroud)

重启你的服务器,你就完全了.快乐的Scssing.


kfl*_*l62 2

摘自 Sinatra自述文件

## You'll need to require haml or sass in your app
require 'sass'

get '/stylesheet.css' do
  scss :stylesheet
end
Run Code Online (Sandbox Code Playgroud)

您需要 sass gem 吗?

您使用什么版本的 Sinatra。2010.09.01 添加了支持scss(当天版本从 1.0 增加到 1.1),也许您需要并更新。