Я использую Laravel Mix в своем проекте и использую Bootstrap 4.1.1.Использование следующего кода для загрузки библиотек:
bootstrap.js (изначально сгенерированный проектом Laravel для загрузки библиотек)
//...
try {
window.$ = window.jQuery = require('jquery/dist/jquery.min');
require('bootstrap');
} catch (e) {
console.log(e);
}
//...
Итак, я просто попытался запустить модальное и нашел это: VM3990:1 Uncaught TypeError: $(...).modal is not a function
.Затем я проверил window.$.fn
и не могу найти никаких функций, определенных Bootstrap.
Любопытно, что затем я перехожу к использованию точек останова для отладки упакованного файла JS.А в разделе, когда Bootstrap импортируется / требуется, этот экземпляр $$$1
(локальная ссылка на jQuery) содержал все методы.Пожалуйста, смотрите следующее изображение:
Я подозревал, что Bootstrap загрузил отдельный экземпляр jQuery, и я обнаружил, что это правда.И этот экземпляр jQuery загружается с isGlobal == false
, поэтому он не подвергается window
как $
/ jQuery
.Когда я удалил строку, я загружаю свой jQuery, Bootstrap все еще загружен, и раскрывающиеся списки все еще могут использоваться, если они не вызваны моим кодом.
Стрелка на изображении указывает на часть jQuery в файле.
Я не очень хорошо знаю веб-пакет, но кто-нибудь сталкивался с этой проблемой раньше?Я только начинаю изучать, как использовать это и модули, поэтому я могу делать то, что не должен делать.