webirus
@webirus
Тыжверстальщик! Наверстай мне упущенное...

Как готовить jQuery и Laravel Vite правильно?

Доброго дня, уважаемые коллеги)
Использую Laravel + Vite, пытаюсь использовтаь сверху jQuery.
Вроде всё просто, по инструкции https://laracasts.com/discuss/channels/vite/larave...
import jQuery from 'jquery';
window.$ = jQuery;

Дальше какой-то банальный скрипт, аля
$(".component").css({
    "padding-top" : $(".header").outerHeight(true)
});

выполняется без проблем.
Покдлючение некоторых сторонних библиотек тоже import 'slick-carousel/slick/slick'; работает.
Но это только поверхностно, ибо большинство библиотек не видит jQuery и валит ошибку.
Uncaught ReferenceError: jQuery is not defined
Всё устанавливается через npm install ... но половину скриптов могу использовать, а половина не видит библиотеки.
Возможно что-то делаю не так, не отрицаю.
В частности не работают lightslider и typeit.
Как бы с этим окончательно разобраться)))
PS: если подключать те же библиотеки в head через простой sсript, то всё нормально работает.
  • Вопрос задан
  • 209 просмотров
Пригласить эксперта
Ответы на вопрос 2
@iljaGolubev
https://api.jquery.com/jquery.noConflict/

Для начала так, но можно и через vite.config.js прикручивать
import $ from 'jquery'
window.jQuery = window.$ = $

и
document.addEventListener('DOMContentLoaded', function () {
	// init lightslider 
}, false);


Включите "Pause on Exceptions" и когда вываливается Uncaught ReferenceError: jQuery is not defined проверьте window.jQuery, window.$
Ответ написан
Комментировать
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
ну раз jQuery undefined то может нужно его вкинуть в глобальный скоуп, как думаете?

window.$ = jQuery;
window.jQuery = jQuery;


Правильно написанная библиотека всегда ссылается на jQuery, а не на доллар.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы