2013-04-27 94 views
5

我有以下條目我(的Rails 3.2.13)的Gemfile:Twitter引導:我是否需要bootstrap-sass和twitter-bootstrap-rails gems?

gem 'twitter-bootstrap-rails' 
gem 'bootstrap-sass' 

和應用程序/資產/ Java腳本/ application.js中:

//= require twitter/bootstrap 

,並在應用程序/資產的頂部/stylesheets/custom.css.scss:

@import 'bootstrap' 

這是「正確」嗎?我是否需要'twitter-bootstrap-rails'和'bootstrap-sass'(或者'bootstrap-sass-rails'),或者它們是多餘的,可能相互衝突? 'bootstrap-sass'寶石包含框架的JavaScript還是隻包含CSS?

回答

9

如果你想使用SASS,你應該使用boostrap-sassbootstrap-sass-railsTwitter-bootstrap-rails使用LESS源。如果你包括這兩者,那麼可能會有衝突。它們都包含用於引導的javascript並集成到資產管道中。

我個人使用更少的版本,它是什麼引導最初寫的(可能會得到更快的版本中,當引導更新)

通常是好現象,檢查寶石出在github來評估你哪個版本的具體需求和他們支持的Rails。

+1

我接受了這個答案,因爲你專門回答了我的問題,關於JavaScript是否包含在'sass'命名的寶石中。謝謝! – 2013-05-11 16:21:11

11

不,你不需要兩個。

只是簡單的把這個在您的Gemfile:

gem 'sass-rails' 
gem 'bootstrap-sass' 

這application.css.scss:

@import 'bootstrap'; 
@import 'bootstrap-responsive'; 

這application.js中

//= require bootstrap 

如果你仍然有問題,你可能需要看清你的清單文件中的東西的順序..

+0

謝謝,非常有幫助! – 2013-05-11 16:19:53

+0

如果您使用的字體真棒,請查看https://github.com/littlebtc/font-awesome-sass-rails/pull/35 – Abram 2013-08-19 22:28:59

+0

@Abram感謝您的解決方案,這對我有幫助。只添加樣式表有點不同。對我來說,application.css.scss中的'@ import'不起作用。我不得不將'= require bootstrap'添加到application.css。 – 2014-02-05 11:38:46