Javascript jquery_ujs和rails ujs问题的问题ajax页面
我是rails和ruby的新手,一周前刚开始学习 我尝试在rails上用jquery在两个人之间进行聊天,其中ajax部分使用jquery 一切都正常,但我犯了一个我不理解的错误,这让我很烦恼 图像到错误(无法将其包含在图像应答器中) VM17:2082未捕获错误:如果同时加载jquery_ujs和rails ujs,则仅使用rails ujs 我知道我同时使用jquery_ujs和rails ujs,rails希望我只使用rails ujs 我的主页(index.hmtl.erb)有以下代码Javascript jquery_ujs和rails ujs问题的问题ajax页面,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,我是rails和ruby的新手,一周前刚开始学习 我尝试在rails上用jquery在两个人之间进行聊天,其中ajax部分使用jquery 一切都正常,但我犯了一个我不理解的错误,这让我很烦恼 图像到错误(无法将其包含在图像应答器中) VM17:2082未捕获错误:如果同时加载jquery_ujs和rails ujs,则仅使用rails ujs 我知道我同时使用jquery_ujs和rails ujs,rails希望我只使用rails ujs 我的主页(index.hmtl.erb)有以下代码
<h1>welcome to the chat </h1>
<div id='conv'>
<div id='message'>
</div>
<div id='sendmsg'>
<%= form_tag "/", method: "post" do %>
<input type='hidden' name='name' value='phil'/>
<input id='tex' type="text" name="message" />
<input id='sen' type="submit" value="send" />
<% end %>
</div>
</div>
这个ajax将向服务器发送一个GET to'/chatBoard',它将使用这个脚本返回数据库中的所有消息
<% @messages.each do |message| %>
<%= message.name %> :
<%= message.message %>
<% end %>
我刚刚对require(“@rails/ujs”).start()做了一个注释,错误不再显示,代码仍然有效:/weard我猜是在你的
应用程序.js
文件中,你有
//= require rails-ujs
//= require jquery_ujs
如果删除
/=require jquery\u ujs
,错误应该会消失。正如错误所说,您正在为相同的目的导入两个库,jquery ujs
和rails ujs
。因此,您需要根据所使用的Rails版本只保留一个。如果您的版本是5.0或之前的版本,您需要使用jquery ujs
,但是如果您使用的是Rails 5.1以后的版本,您需要使用Rails ujs
。此外,如果您需要对jQuery的支持,正如您在评论中提到的,您需要在Gemfile
中添加jQuery rails
gem,在控制台中运行bundle install
,并在application.js
中添加/=requirejQuery
(在您导入jquery-ujs
或rails-ujs
的行上方)。您好,谢谢您的回答,但我只是在应用程序中得到了这个。jsrequire(@rails/ujs”).start().require(“turbolinks”).start().require(@rails/activestorage”).start().require(“通道”).require(“自定义”)
对格式感到抱歉。我找不到如何在代码backstickthanks中执行换行操作。我对rails/ujs进行了注释,它可以工作,不知道为什么:D
// require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require("custom")
//= require rails-ujs
//= require jquery_ujs