Rails 6 webpack 抛出'Uncaught ReferenceError: $ is not defined'

aws*_*sid 7 javascript jquery ruby-on-rails webpack ruby-on-rails-6

嗨,我最近开始使用 ruby​​ 2.6.5 开发 Rails 6。由于 rails 6 引入了 webpack,所以我正在尝试使用 webpack 加载我的 js 文件。虽然我已经在 appliation.js 中需要 jquery,但我仍然收到以下错误:

'Uncaught ReferenceError: $ is not defined'
Run Code Online (Sandbox Code Playgroud)

应用程序.js

require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require('packs/jquery')
Run Code Online (Sandbox Code Playgroud)

我的 'jquery.js' 文件位于 packs 目录中。如果我遗漏了什么,请告诉我。提前致谢 :)

CR7*_*CR7 15

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

const webpack = require('webpack')
environment.plugins.prepend('Provide', new webpack.ProvidePlugin({
  $: 'jquery/src/jquery',
  jQuery: 'jquery/src/jquery',
  jquery: 'jquery',
  'window.jQuery': 'jquery',
  Popper: ['popper.js', 'default']
}))

module.exports = environment
Run Code Online (Sandbox Code Playgroud)

config/webpack/environment.js和删除require('packs/jquery')application.js