Ошибка: не удается найти модуль 'bootstrap -sprockets' - PullRequest
1 голос
/ 07 мая 2020

Хотя запуск bootstrap с рельсами работает нормально, функциональность JS у меня не работает. Например, я не могу свернуть панель навигации, но могу запустить $() в консоли браузера.

Мой /app/javascript/packs/application.js выглядит так:

// This file is automatically compiled by Webpack, along with any other files
// present in this directory. You're encouraged to place your actual application logic in
// a relevant structure within app/javascript and only use these pack files to reference
// that code so it'll be compiled.

require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require("jquery")
require('bootstrap-sprockets')
require('popper.js')
require('turbolinks')

// As instructed in https://github.com/twbs/bootstrap-rubygem#a-ruby-on-rails 
//= require bootstrap-sprockets
// But the above is not working

Мой /app/assets/stylesheets/application.scss выглядит так:

@import "bootstrap" ;

body {
    margin: 0 ;
}

В моем routes.rb указано root to: 'pages#home'. Файл home. html .erb выглядит так:

<div class="cover-container d-flex w-100 h-100 p-3 mx-auto flex-column">
  <main role="main" class="inner cover">
    <h1 class="cover-heading">Cover your page.</h1>
    <p class="lead">Cover is a one-page template for building simple and beautiful home pages. Download, edit the text, and add your own fullscreen background photo to make it your own.</p>
    <p class="lead">
      <a href="#" class="btn btn-lg btn-secondary">Learn more</a>
    </p>
  </main>

  <footer class="mastfoot mt-auto">
    <div class="inner">
      <p>Cover template for <a href="https://getbootstrap.com/">Bootstrap</a>, by <a href="https://twitter.com/mdo">@mdo</a>.</p>
    </div>
  </footer>
</div>

Когда я запускаю сервер и посещаю домашнюю страницу, в консоли браузера появляется сообщение об ошибке:

Error: Cannot find module 'bootstrap-sprockets'

В моем гем-файле есть записи для jquery, bootstap:

gem 'jquery-rails', '~> 4.3', '>= 4.3.5'
gem "bootstrap", "~> 4.4"
gem 'bootstrap-sass'

Я не могу использовать такие функции, как сворачивание панели навигации, в bootstrap. Что не так?

1 Ответ

2 голосов
/ 07 мая 2020

У меня были такие же проблемы с неработающим развалом, как и в последней версии jQuery и bootstrap. Пришлось изменить на: «bootstrap»: «^ 4.4.1», «jquery»: «3.4.1»

Но это было с рельсами 6.0.1, поэтому с использованием u js . Проверьте эти версии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...