generating css file from new sass format (scss) wi

2019-04-07 17:04发布

问题:

I am writing a sinatra app with haml and sass. When I try to link in the stylesheet with a scss extension located in my views folder I get the following error: NoMethodError at /nav.css undefined method `scss'

Here is my get method

get '/nav.css' do 
    content_type 'text/css', :charset => 'utf-8'
    scss :nav
end

I have only gotten this to work when I switch to the older sass syntax. I also have to change the nav.scss to nav.sass and the get method to sass :nav

I have also tried just having sass :nav with nav.scss and sass :nav with nav.sass but still scss syntax

回答1:

Excerpt from Sinatra README

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

get '/stylesheet.css' do
  scss :stylesheet
end

Are you required the sass gem?

What version of Sinatra you use. Support for scss was added in 2010.09.01 (same day version was increased from 1.0 to 1.1), perhaps you need and update.



回答2:

I don't use the above code from the README, just put the following in your app.rb file after updating your gem.

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

Restart your server and you're all set. Happy Scssing.