rails 6 / webpacker tooltip and popover event listeners TypeError: $(...).tooltip is not a function
Posted
技术标签:
【中文标题】rails 6 / webpacker tooltip and popover event listeners TypeError: $(...).tooltip is not a function【英文标题】: 【发布时间】:2021-05-24 00:01:57 【问题描述】:我收到错误 TypeError: $(...).tooltip is not a function 如果我只注释掉工具提示,那么我会收到同样的 popover 错误(不是函数)我必须删除事件来自 application.js 的侦听器以停止错误我已经看到了未安装 jquery-ui 的建议解决方案,但我发现要求 jquery-ui 破坏了我的应用程序,因此它可能包含在 jquery-ujs 中并且不应该被调用它是自己的,但希望也有人可以建议我
document.addEventListener("turbolinks:load", () =>
// $('[data-toggle="tooltip"]').tooltip()
// $('[data-toggle="popover"]').popover()
)
这是我完整的 application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("jquery")
require("js.cookie")
require("@rails/activestorage").start()
require("channels")
require("react")
require("react-dom")
require("bootstrap")
require.context('../images', true)
import "bootstrap"
import "blueimp-gallery"
import "../stylesheets/application"
document.addEventListener("turbolinks:load", () =>
// $('[data-toggle="tooltip"]').tooltip()
// $('[data-toggle="popover"]').popover()
)
import JQuery from 'jquery';
window.jQuery = $;
window.$ = $;
require("../stylesheets/application")
【问题讨论】:
我看不到 jQuery UI 库在哪里加载。.tooltip()
是这个库的一部分,如果不包含它,您将无法加载它。
【参考方案1】:
我通过使用 rubygems jquery-ui-rails 解决了这个问题,当我使用它时,我投入了 jquy-ui-themes。
【讨论】:
以上是关于rails 6 / webpacker tooltip and popover event listeners TypeError: $(...).tooltip is not a function的主要内容,如果未能解决你的问题,请参考以下文章
你如何让 JQuery 与 Rails 6 和 Webpacker 6 一起工作
Rails 5/6:如何在 webpacker 中包含 JS 函数?
Rails 6.1.0 [webpack-cli] TypeError:无法读取未定义的属性“插件”