Задать вопрос

Переход с Laravel 5.4 на 5.7 перестали работать сторонние библиотеки?

Перенес проект с Laravel 5.4 на 5.7 при этом ни в какую не удается настроить jstree. Его не видит jQuery.

jquery.min.js:2 Uncaught TypeError: $(...).jstree is not a function

При этом файлы подключаются через CDN в таком порядке (layout.app - блок header)

<script src="{{ asset('js/app.js') }}" defer></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jstree/3.3.7/jstree.min.js"></script>


А в шаблоне
<script type="text/javascript">
    $(function()
    {
        $('#jstree').jstree();
    });


Пробовал через стеки @push('scripts') / @stack('scripts') - ничего не изменилось.
Пробовал также подключать через файлы, все в одном шаблоне, а также другие библотеки, напр. magnific.popup - проблема сохраняется.

На версии 5.4 работает. В документации пока не нашел ответа.
  • Вопрос задан
  • 180 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
modestguy
@modestguy
full-stack web developer
Laravel тут совсем непричём. Попробуйте так для начала:
<script>
    jQuery(function($) {
         ("#jstree").jstree();
    });
</script>

Если не поможет - смотрите совместимость версий. Порядок подключения файлов у вас верный.
Ответ написан
Комментировать
dima9595
@dima9595
Junior PHP
Если в App.js вызывается jstree, то вы не правильно подключаете файлы.
Нужно сначала подключить jquery, потом jstree, а только потом app.js.
Ответ написан
Комментировать
CHERNOGOLOV
@CHERNOGOLOV Автор вопроса
Проблема была в свойстве "defer" - оно отвечает за отложенную загрузку скриптов. Пока до конца еще не разобрался, правда.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы