我正在开发 Rails 6 和 Bulma 轮播扩展,在返回包含 js 代码的页面时遇到问题
我的app/javascripts/packs/application.js
require("turbolinks").start();
window.BulmaCarousel = require('bulma-extensions/bulma-carousel/dist/js/bulma-carousel');
我的网页
<div class="hero-carousel" id="carousel-photo"></div>
<script>
BulmaCarousel.attach('#carousel-photo', {
slidesToScroll: 1,
slidesToShow: 1
})
</script>
如果我刷新浏览器,或者当我第一次访问页面时,我的bulma carousel
工作正常。但是,当我转到其他页面,然后返回页面时,它会出错。如何将这段JS代码附加到turbolinks onload
尝试turbolinks:before-cache
$(document).on("turbolinks:before-cache", function() {
BulmaCarousel.attach('#carousel-photo', {
slidesToScroll: 1,
slidesToShow: 1
})
});
$(document).on("turbolinks:load", function() {
BulmaCarousel.attach('#carousel-photo', {
slidesToScroll: 1,
slidesToShow: 1
})
});
将两者添加到应用程序.js文件中,而不是将其添加到脚本标记中