Через LaravelMix собираю один файл
mix.scripts([
'resources/assets/far/plugins/jquery/jquery.min.js',
'resources/assets/far/plugins/bootstrap/js/bootstrap.bundle.min.js',
'resources/assets/far/js/adminlte.min.js',
'resources/assets/far/js/demo.js',
'resources/assets/far/js/main.js',
], 'public/assets/far/js/far.js');
В файле main.js описан код для sideBar, который подкючается в layout
$('.nav-sidebar a').each(function () {
const location = window.location.protocol + '//' + window.location.host + window.location.pathname,
link = this.href;
if (link === location) {
$(this).addClass('active');
$(this).closest('.has-treeview').addClass('menu-open');
} else if(location.includes(link)) {
$(this).closest('.has-treeview').addClass('menu-open');
}
})
В layout документе подключаю это файл
<script src="{{ asset('assets/far/js/far.js') }}"></script>
В layout есть вкладка @include
@include('far.layouts.sidebar')
Итог, скрипт есть в общем собираемом файле, но он не работает.
Если же я отдельным файлом подключаю свой скрипт в layout
<script src="{{ asset('assets/far/js/main.js') }}"></script>
Все работает.
Подскажите, в чем проблемма ?