al-*_*aif 8 ruby-on-rails jquery-plugins ruby-on-rails-3.1 asset-pipeline twitter-bootstrap
我正在使用seyhunak的gem开发一个带有Twitter Bootstrap的3.1 Rails应用程序.
在生产模式下,我能够通过管道预编译使用基本的bootstrap CSS和JS:
RAILS_ENV=production bundle exec rake assets:precompile
Run Code Online (Sandbox Code Playgroud)
使用gem文件:
group :assets do
gem 'sass-rails', '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
gem "twitter-bootstrap-rails"
end
Run Code Online (Sandbox Code Playgroud)
和application.js文件:
//= require_tree .
//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require bootstrap-tab
//= require bootstrap-modal
//= require bootstrap-dropdown
//= require bootstrap-popover
Run Code Online (Sandbox Code Playgroud)
该应用程序工作正常,除了模态和下拉列表等引导插件.这些插件作为供应商资产目录中存在的静态JavaScript库存在:
/vendor/assets/javascripts/bootstrap-dropdown.js
...
Run Code Online (Sandbox Code Playgroud)
我不确定这些文件是否正在预编译,我怎么能设法这样做?
找到了!
这不是引导程序的问题,而是正确预编译jQuery.而且不需要为单个插件包含javascript文件.它们已经包含在主要的twitter/bootstrap中.
通过重新安排javascripts文件解决了问题,如下所示:
的application.js
//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
Run Code Online (Sandbox Code Playgroud)
的Gemfile
group :assets do
gem 'sass-rails', '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
gem "twitter-bootstrap-rails"
end
gem 'jquery-rails', '>= 1.0.12'
Run Code Online (Sandbox Code Playgroud)
预先处理资产并开始工作!
| 归档时间: |
|
| 查看次数: |
10665 次 |
| 最近记录: |