2014-10-02 43 views
0

我剛開始在現有的項目上工作,我遇到了讓jquery在localhost上加載的一些問題。部署的網站似乎工作正常,所以我很難從哪裏開始排查此問題。Rails是不是預編譯javascripts

在控制檯中我得到:

未捕獲的ReferenceError:$沒有定義本地主機

好像jQuery是不加載,但它包含在Gemfile中。

在控制檯中base.js文件顯示像這樣:

//= require jquery 
//= require sass-bootstrap-3/dist/js/bootstrap 
//= require modernizr 
//= require respond 
//= require lodash 
; 

在哪裏,我認爲它應該顯示腳本的遵守版本。

在控制檯中運行這個顯示jquery確實存在。

Rails.application.config.assets 

--- !omap 
- :enabled: true 
- :paths: 
    - /Users/000/app/assets/ebooks 
    - /Users/000/app/assets/fonts 
    - /Users/000/app/assets/images 
    - /Users/000/app/assets/javascripts 
    - /Users/000/app/assets/stylesheets 
    - /Users/000/vendor/assets/javascripts 
    - /Users/000/vendor/assets/stylesheets 
    - /Users/000/.gem/ruby/2.0.0/gems/client_side_validations-3.2.6/vendor/assets/javascripts 
    - /Users/000/.gem/ruby/2.0.0/gems/coffee-rails-3.2.2/lib/assets/javascripts 
    - /Users/000/.gem/ruby/2.0.0/gems/jquery-rails-3.0.4/vendor/assets/javascripts 
    - !ruby/object:Pathname 
    path: /Users/000/app/assets/fonts 
- :precompile: 
    - !ruby/object:Proc {} 
    - !ruby/regexp /(?:\/|\\|\A)application\.(css|js)$/ 
    - !ruby/regexp /(^[^_\/]|\/[^_])[^\/]*$/ 
    - !ruby/regexp /\.(?:svg|eot|woff|ttf)$/ 
- :prefix: /assets 
- :version: '1.0' 
- :debug: true 
- :compile: true 
- :digest: false 
- :manifest: 
- :cache_store: 
    - :file_store 
    - /Users/000/tmp/cache/assets/ 
- :js_compressor: 
- :css_compressor: !ruby/object:Sass::Rails::CssCompressor 
    options: 
     :style: :compressed 
- :initialize_on_precompile: true 
- :logger: 
- :compress: true 
- :digests: {} 
- :source_digests: {} 

我用Rails 3.2.5和jQuery護欄3.0.4。 關於從哪裏開始排除故障的任何想法?我已經花了一天的時間來解決這個問題(可能很簡單)。

回答

0

這是通過做兩件事情解決了如上建議,加 //= require jquery_ujs 到清單JS文件

感謝您的幫助。