Неотхваченная ошибка типа: $(…).hsSideNav не является функцией, с веб-пакером в Rails 6

#javascript #jquery #ruby-on-rails #twitter-bootstrap #webpack

Вопрос:

У меня есть приложение Rails 6, работающее с конвейером активов, которое я пытаюсь перенести в webpacker, чтобы использовать turbo. До сих пор мне удавалось правильно настроить турбо. Приложение использует некоторые плагины начальной загрузки, в том числе hsSideNav, и я получаю ошибку, которую не смог решить: Uncaught TypeError: $(...).hsSideNav .

Я поместил копию файла hsSideNav в app/javascript/hs-navbar-vertical-aside/hs-navbar-vertical-aside.js .

Вот мой app/javascript/packs/application.js :

 require("@rails/ujs").start()
import "@hotwired/turbo-rails"
require("@rails/activestorage").start()
require("channels")
require("jquery")
import 'bootstrap/dist/js/bootstrap'
import 'bootstrap/dist/css/bootstrap'
require("hs-navbar-vertical-aside/hs-navbar-vertical-aside")
 

И мой config/webpack/environment.js :

 const { environment } = require('@rails/webpacker')

const webpack = require('webpack')
environment.plugins.prepend('Provide',
  new webpack.ProvidePlugin({
    $: 'jquery/dist/jquery.min',
    jQuery: 'jquery/dist/jquery.min'
  })
)

module.exports = environment
 

Что я делаю не так? Есть ли другой способ загрузить плагины jQuery в webpacker?

Комментарии:

1. Ты когда-нибудь понимал это? Возникли те же проблемы с hsSideNav/webpacker.