Bootstrap を Sinatra アプリケーションに追加しようとしています。コンパイルするルートをセットアップしbootstrap.less
、responsive.less
. Web ブラウザーで 2 つのスタイルシートを別々に読み込むと、期待どおりに機能します。しかし、HTML ページでそれらを使用しようとすると、アプリケーションがハングします。でのみアプリケーションを停止できますkill -9
。
どういうわけか Less imports と複数のスタイルシートが原因でアプリケーションがハングするようです。問題を特定できました:
app.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;
}
ビュー/影.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
何が問題なのか、またはこれをさらにデバッグする方法はありますか?