Я знаю, что могу использовать bootstrap, так как контейнеры / строки работают на этом сайте, но по некоторым причинам не похоже, что JS работает для Bootstrap.
У меня есть следующие настройки в app> assets> javascripts> application.js
//= require rails-ujs
//= require rails-validator
В приложении> javascript> packs> application.js
import "babel-polyfill/dist/polyfill.js";
import nav from "./nav";
app> javascript> пакеты> стили> bootstrap.scss
@import '~bootstrap/dist/css/bootstrap';
@import '~bootstrap/scss/_functions';
@import '~bootstrap/scss/_variables';
config> webpack> environment.js
const environment = require('./environment')
environment.plugins.get("UglifyJs").options.uglifyOptions.ecma = 5
module.exports = environment.toWebpackConfig()
Gemfile.lock
bootstrap-sass (3.3.7)
autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4)
ИмеюПонятия не имею, что мне нужно обновить, чтобы JS действительно работал.
Я попытался обновить app> javascript> application.js с помощью:
// JS libraries
import "jquery"
import "jquery-ujs"
import "bootstrap"
Это приводит к ошибке Uncaught: Не удается найти модуль "jquery-ujs" и Uncaught ReferenceError: приложение не определено.
Я попытался добавить в app> javascript> application.js с помощью:
import 'bootstrap/dist/js/bootstrap';
import Rails from 'rails-ujs';
Rails.start();
Затем в моей конфигурации> webpacker> environment.js с:
const {
environment
} = require('@rails/webpacker');
const webpack = require('webpack');
environment.plugins.append('Provide', new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
Popper: ['popper.js', 'default']
}));
module.exports = environment;
В конечном итоге с bootstrap.js: 7 Uncaught Ошибка: не удается найти модуль "popper.js" и home.js: 4 Uncaught ReferenceError: приложение не определено