我已經構建了一個小型站點作爲學習練習併爲RoR提供了一個去處。我很高興在「開發」運行對WEBrick運行的結果,但有問題將網站移動到通過Apache服務「生產」(所以我可以留下來回頭看)。Java腳本在預編譯後無法工作
我已經嘗試了一些我已經發現的小調整,但似乎沒有任何更正的問題 - 編譯我的資產後JavaScript停止工作 - 我的自定義小jQuery和內置bootstrap(下拉)不再作品。基本的HTML呈現正確。我似乎在Chrome Developer工具中看到的「application.js」中出現了一個錯誤。我覺得這可能是問題所在,但我還沒有深入到「資產管道」中來抓住它。
任何人都可以發現我可能會出錯的地方嗎?
這裏有一些細節,並樂意提供更多,如果需要。很想得到這個釘牢。
結果運行的預編譯的:
$ bundle exec rake assets:precompile RAILS_ENV=production
Ignoring `ruby` directive. This is a feature added to Bundler 1.2.0 and higher. Please upgrade if you would like to use it.
/usr/bin/ruby1.9.1 /usr/local/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets
$
的Gemfile:
source 'https://rubygems.org'
ruby '1.9.1'
gem 'rails', '3.2.8'
gem 'mysql2'
gem 'json'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
gem 'bootstrap-sass', '~> 2.2.2.0'
gem 'simple_form'
gem 'bcrypt-ruby', '~> 3.0.0'
應用程序/資產/ Java腳本/ application.js中:
//= require bootstrap
//= require jquery
//= require jquery_ujs
//= require_tree .
應用程序/資產/ JavaScript的/ rootEffects .js(我的一些隨機jQuery):
$(document).ready(function(){
//Tooltips for gifts
$('.edit').tooltip({'placement':'top'});
$('.delete').tooltip({'placement':'top'});
$('.tip-info').tooltip({'placement':'top'});
$('.link-buy').tooltip({'placement':'bottom'});
$('.long-name').tooltip({'placement':'top'});
});
打算提供公共/資產/的內容,但不知道這是否有幫助。
下面是我通過Chrome開發工具看到的錯誤。我無視控臺上的第二個錯誤,因爲這與Chrome相關。
下面是如果我從控制檯通過點擊顯示的錯誤。我強烈地感到這是相關的。
從我所閱讀和理解 - 預編譯過程應該把我所有的JavaScript在一個單一的文件「的application.js」 - 可能拋出的錯誤是阻止它的任何執行。到目前爲止,我還沒有找到一個調整,以便我尋求幫助。