@Mo1she

Подключение скриптов laravel?

В общем шаблоне app.blade php у меня есть конструкция -
@yield('scripts')

Затем я расширяю этот шаблон в шаблоне news.blade.php и как и принято объявляю секцию скриптов -
@section('scripts')
    //скрипты, относящиеся к news.blade.php
@endsection


Также в этом же шаблоне (news.blade.php) я инклюдю файл sidebar.blade.php, и в этом файле я опять хочу подключить скрипты, относящиеся только к этому файлу (sidebar.blade.php) -
@section('scripts')
    //скрипты, относящиеся к sidebar.blade.php
@endsection


То есть в конечном итоге я хочу, чтобы конструкция @yield('scripts') в шаблоне app.blade.php подключала содержимое сразу двух секций scripts. Как это наиболеее красивее реализовать? Знаю что можно сделать две секции scripts-1 и scripts-2, но у меня у каждого файла есть свои скрипты и если на каждый файл создавать это, то получится некрасиво.
  • Вопрос задан
  • 2117 просмотров
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Laravel
Stacks
Blade allows you to push to named stacks which can be rendered somewhere else in another view or layout. This can be particularly useful for specifying any JavaScript libraries required by your child views:

@push('scripts')
    <script src="/example.js"></script>
@endpush

You may push to a stack as many times as needed. To render the complete stack contents, pass the name of the stack to the @stack directive:

<head>
    <!-- Head Contents -->

    @stack('scripts')
</head>


https://laravel.com/docs/5.7/blade#stacks
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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