Skip to main content

Command Palette

Search for a command to run...

Guia para Utilizar as Diretivas @Stack e @Push do Blade no Laravel

Published
2 min read
F

Sou Full Stack e escritor amador entusiasmado por desenvolvimento de software. Compartilho meu entusiasmo pela tecnologia e complexidades do desenvolvimento através da escrita.

Podemos carregar conteúdos sob demanda em uma página no Laravel usando as diretivas do Blade @push() e @stack.

Se você deseja carregar CSS ou scripts apenas em algumas páginas específicas, @stack e @push são ideais para isso. As diretivas @stack e @push do Laravel permitem carregar scripts e CSS para um único arquivo, facilitando o carregamento sob demanda.

O Blade permite que você adicione conteúdo a pilhas nomeadas, que podem ser renderizadas em outro local, em outra visão ou layout. Isso é útil para especificar bibliotecas de JavaScript e CSS necessárias para suas visões filhas.

Veja o exemplo de implementação do stack e push no Laravel:

<!doctype html>
<html lang="pt-BR">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Laravel</title>

    @stack('style')

</head>
<body>
    <div id="app">
        <nav class="navbar navbar-expand-md navbar-light bg-white shadow-sm">
            <div class="container">
                <a class="navbar-brand" href="{{ url('/') }}">
                    Laravel
                </a>
                <div class="collapse navbar-collapse" id="navbarSupportedContent">
                    <!--Header section -->
                </div>
            </div>
        </nav>

        <!--Content section -->
        <main class="py-4">
            @yield('content')
        </main>

    </div>

    @stack('script')

</body>
</html>

Agora, se você deseja carregar CSS e scripts apenas para a página de boas-vindas, sem carregá-los globalmente, siga este exemplo de código para a página de boas-vindas:

@extends('layouts.app')

@push('style')
    <!-- CSS -->
@endpush

@section('content')

    <div class="container">
        <div class="row justify-content-center">
            <div class="col-md-8">
                <div class="card">

                </div>
            </div>
        </div>
    </div>

@endsection

@push('script')
    <!-- JavaScript -->
@endpush

Conclusão

Abordei de maneira clara os conceitos das diretivas @stack e @push no Laravel.

Agora, você sabe como implementar o push de CSS no Laravel, bem como utilizar o exemplo de stack e push. Espero que este guia tenha sido útil para você.

More from this blog

Dicas de Laravel - fsales

28 posts

Sou Full Stack e escritor amador, apaixonado por software. Compartilho no blog os processos e desafios que enfrentei, com o objetivo de dividir meu entusiasmo e aprendizado com você!