Ceci est mon Gemfile:
gem "bootstrap-sass", "~> 3.2.0.0"
C'est mon application.js
:
//= require bootstrap
//= require bootstrap-sprockets
//= require bootstrap.file-input
ma bootstrap_and_overrides.css.scss
ressemble à ça:
@import "bootstrap-sprockets";
@import "bootstrap";
Quand je regarde la source de ma page, je vois ceci:
<script data-turbolinks-track="true" src="/assets/bootstrap.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/affix.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/alert.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/button.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/carousel.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/collapse.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/dropdown.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tab.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/transition.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/scrollspy.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/modal.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/tooltip.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap/popover.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/bootstrap-sprockets.js?body=1"></script>
La documentation officielle dit ceci:
Plugins can be included individually (using Bootstrap"s individual *.js files), or all at once (using bootstrap.js or the minified bootstrap.min.js).
Qu'est-ce qui se passe est à chaque fois que j'utilise le défautle code modal du site de Bootstrap dans mon application, il se déclenche rapidement et disparaît. Après de nombreuses recherches, je pense que cela est dû au fait que Bootstrap est chargé à deux reprises. Bootstrap.js
contient les informations nécessaires pour le modal, donc je n'ai pas besoin d'inclure bootstrap/modal.js
, mais je ne sais pas comment le supprimer.
Pensées?
Réponses:
2 pour la réponse № 1Parce que vous l'incluez deux fois, apparemment. le documents officiels dire:
Exiger des javascripts de démarrage dans
app/assets/javascripts/application.js
://= require jquery //= require bootstrap-sprockets