我一直在寻找一种方法来消除我的项目中对jQuery的需求。旋转木马是我最后的jQuery堡垒,所以我正在尝试为旋转木马设置GlideJS,而不是依赖于jQuery。当我在rails控制台中运行new Glide({})时,我得到NoMethodError (undefined method 'Glide' for main:Object)
如果我查看火狐开发工具中的错误,我看到的是[Glide warn]: Root element must be a existing Html node / Uncaught TypeError: this.root is undefined。
application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("channels")
import 'controllers'
import "bootstrap"
import Glide from '@glidejs/glide'
new Glide('.glide').mount()frontpage.html.erb
<div class="glide">
<div class="glide__track" data-glide-el="track">
<ul class="glide__slides">
<li class="glide__slide">slide1</li>
<li class="glide__slide">slide2</li>
<li class="glide__slide">slide3</li>
<li class="glide__slide">slide4</li>
</ul>
</div>
<div class="glide__arrows" data-glide-el="controls">
<button class="glide__arrow glide__arrow--left" data-glide-dir="<"><</button>
<button class="glide__arrow glide__arrow--right" data-glide-dir=">">></button>
</div>
</div>到目前为止,我还没有在我的项目中使用过很多javascript。
发布于 2021-02-27 00:09:32
由于我对JS不是很了解,这是给我的,它起作用了。
在application.js中
document.addEventListener("turbolinks:load", () => {
new Glide('.glide', {
}).mount()
})https://stackoverflow.com/questions/66338119
复制相似问题