如何在Heroku Sinatra应用程序中使用Stylus

时间:2013-07-04 02:48:55

标签: heroku sinatra stylus

我刚开始尝试使用Sinatra,部署到Heroku,到目前为止,我已经能够很快掌握基础知识。话虽如此,我仍然对如何在我的应用程序中启用和使用Stylus感到困惑。

根据我对Sinatra文档的了解,这就是我构建基本的app.rb文件的方式:

require 'sinatra'
require 'stylus'
require 'stylus/tilt'

get '/' do
  haml :index
end

另外,以下是我的Gemfile的内容:

source 'https://rubygems.org'
gem 'sinatra', '1.1.0'
gem 'thin'
gem 'haml', '>= 2.2.0'
gem 'stylus'

使用Bundler后,将我的回购推送到Heroku,好像发生了必要的好处 - 控制台输出显示手写笔,手写笔源和execjs(我假设负责编译.styl文件)被正确包括在内。

我的问题是:

a).styl文件会在哪里生效?我当前的文件夹结构是:

app -
  Gemfile
  Gemfile.lock
  Procfile
  app.rb
  public -
    stylesheets
  views -
    layout.haml
    index.haml

b)如何编译/引用.styl文件?链接在头部,在路线中引用,或......?

1 个答案:

答案 0 :(得分:1)

a)我将任何样式表(未编译)放入app/views/stylesheets/

b)您可以将它们预先编译为app/public/css,然后按照引用任何其他外部CSS的方式引用它们,link中有head(我就是这样做的)或者,你可以通过路由调用编译来使用你设置的方式,例如

get "/screen.css" do
  stylus :"stylesheets/screen"
end

您可能希望在此添加某种caching