我需要在application.js文件中同时使用这两个文件。问题是,如果一个人高于另一个,我的应用程序的一部分会中断。但我需要他们两个都在工作。
E.G。如果我需要jquery over jquery_ujs,我的注销功能将停止工作,并收到No route matches [DELETE] "/users/sign_out"
错误。
E.G。反之亦然,如果jquery_ujs超过了jquery,那么来自设计的一些链接,例如'destroy'或'edit'就会完全消失。
我认为这是一个设计问题,但我不确定应该做些什么。
的application.js:
//= require jquery_ujs
//= require jquery
//= require bootstrap
//= require turbolinks
//= require masonry/jquery.masonry
//= require_tree .
_header.html.erb:
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav navbar-right">
<li><%= link_to "Home", root_path %></li>
<li><%= link_to "About", about_path %></li>
<% if user_signed_in? %>
<li><%= link_to "New Pin", new_pin_path %></li>
<li><%= link_to "Account Settings", edit_user_registration_path %></li>
<li><%= link_to "Log out", destroy_user_session_path, method: :delete %></li>
<% else %>
<li><%= link_to "Sign in", new_user_session_path %></li>
<% end %>
</ul>
更新:显然,当我退出时,它不起作用并提供错误No route matches [DELETE] "/users/sign_out
。但是,如果我刷新页面,我会成功注销:/ everytime。
答案 0 :(得分:4)
好像你在jquery之前添加了jquery_ujs。所以你需要先添加jquery,比如
//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require masonry/jquery.masonry
//= require_tree .
答案 1 :(得分:0)
试试这个,将此代码粘贴到devise.rb
config.sign_out_via = :get