Laravel Blade @prepend Directive

Laravel Blade @prepend Directive

In version 5.4 Laravel added a new components and slots feature that simplifies building HTML elements into reusable areas.

As an example of how this features works pretend you have a layout.blade.php file that includes this:

<ul id="sidebar">
    @stack('sidebar')
</ul>

Now when you want to insert data into this section from a sub-view you can add:

@push('sidebar')
    <li>Sidebar list item</li>
@endpush

Once this is rendered in the browser the results are an unordered list:

<ul id="sidebar">
    <li>Sidebar list item</li>
</ul>

Now since v5.4.10 a new prepend directive has been which allows you to push an item to the front of the stack before it’s rendered.

For example:

@push('sidebar')
    <li>Sidebar list item</li>
@endpush

@prepend('sidebar')
    <li>First Sidebar Item</li>
@endprepend

Now, the results will be:

<ul id="sidebar">
    <li>First Sidebar Item</li>
    <li>Sidebar list item</li>
</ul>

This will be great in those situations where you need to push items to the front of the stack.

Filed in: Laravel 5.4 / Blade

Newsletter

Join 31,000+ others and never miss out on new tips, tutorials, and more.

Laravel News Partners

Laravel Jobs

Software Developer
Remote (US & Canada)
Alley
😎 Laravel Developer
Remote
Jogg, Inc
Junior, Mid, and Senior Software Engineers. Laravel / Vue. Saint Petersburg, FL
Saint Petersburg, FL and Remote
ShineOn
Senior PHP Developer (Laravel)
Remote
The Interaction Design Foundation
Fullstack Laravel Engineer (Munich/Remote) 💻
Munich, Germany or Remote
AirLST GmbH