ruby 在 rails - spree.js 'jquery.ui.all'

ruby on rails - spree.js 'jquery.ui.all'

我已经在我的 rails 项目中安装了 spree gem,但我遇到了这个错误 couldn't find file 'jquery.ui.all' 我看到了太多问题和解决方案,但我没有得到任何解决方案然而。 我的 rvm 版本:

rvm list

ruby-2.0.0-p353 [x86_64]

=* ruby-2.2.0 [x86_64]

Rails版本:Rails4.1.8

这是我的视图错误页面:

Sprockets::FileNotFound in Spree::Home#index
Showing /home/sadk/.rvm/gems/ruby-2.2.0/gems/spree_frontend-2.4.2/app/views/spree/shared/_head.html.erb where line #11 raised:

couldn't find file 'jquery.ui.all'
  (in /home/sadk/.rvm/gems/ruby-2.2.0/bundler/gems/spree_fancy-bdeaeb9ced29/app/assets/javascripts/spree/fancy.js:3)
Extracted source (around line #11):

   <%= stylesheet_link_tag 'spree/frontend/all', :media => 'screen' %>

   <%= stylesheet_link_tag 'spree/fancy/print', :media => 'print' %><%= csrf_meta_tags %>
   <%= javascript_include_tag 'spree/frontend/all' %>
   <!--[if lt IE 9]>
     <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6/html5shiv.min.js"></script>
   <![endif]-->

<%= javascript_include_tag 'spree/frontend/all' %> 是第 11 行有错误。

我尝试添加

//= require jquery.ui.all

我的 application.js 但问题是一样的。你能帮我看看我该怎么做吗?

捆绑后我可以在列表中看到这些行

 ...
 Using jquery-rails 3.1.2
 Using jquery-ui-rails 5.0.3 
 ...

那么您如何将 jquery 包含在您的项目中?

而不是

//= require jquery.ui.all

尝试

//= require jquery.ui

并记得 bundle install

我认为问题在于某些狂欢版本不包含 jquery-ui-rails gem 因此您需要将其添加到您的 gem 文件中:gem 'jquery-ui-rails'

我通过在 fancy.js

中做一些小改动解决了这个问题

而不是

//= require jquery.ui.all

我加了

//= require jquery-ui

然后 restart server

就是这样。