我正在尝试将 Bootstrap 添加到 Sinatra 应用程序。我已经设置了编译路径bootstrap.less
和responsive.less
. 在 Web 浏览器中分别加载两个样式表按预期工作。但是当我尝试在 html 页面中使用它们时,我的应用程序会挂起。我只能用 停止应用程序kill -9
。
似乎不知何故,较少的导入和多个样式表会导致应用程序挂起。我能够隔离问题:
应用程序.rb
require 'rubygems'
require 'bundler/setup'
require 'sinatra'
require 'less'
get '/' do
haml :index
end
get '/style1.css' do
less :style1, :paths => ['views']
end
get '/style2.css' do
less :style2, :paths => ['views']
end
意见/index.haml
!!! 5
%html
%head
%title Hello World
%link{'rel' => 'stylesheet', 'href' => 'style1.css', 'type' => 'text/css'}
%link{'rel' => 'stylesheet', 'href' => 'style2.css', 'type' => 'text/css'}
%body
%h1 Hello World
%p Hello World
视图/style1.less
@import "mixins.less";
@import "shadows.less";
@color: #00eeff;
h1 {
color: @color;
}
视图/mixins.less
.box-shadow(@shadow) {
-webkit-box-shadow: @shadow;
-moz-box-shadow: @shadow;
box-shadow: @shadow;
}
视图/shadows.less
h1 {
.box-shadow(6px 6px 3px #888);
}
意见/style2.less
@color: #ccff00;
p {
color: @color;
}
访问索引页面会挂起 Sinatra。style2.less
如果我在 html 页面或内联shadows.less
或页面加载mixins.less
中style1.less
按预期注释掉。
知道可能是什么问题或如何进一步调试吗?