ViewComposer y Provider en Laravel

Para programar un ViewComposer creamos un archivo composer con el contenido del view, un provider que lo registramos

Como implementar viewComposer en Laravel 8

En este pequeño tutorial vamos ver la implementación de un viewcomposer. Entonces vamos:

¿Qué es un ViewComposer?

Un View Composer es una función que se ejecuta cada vez que llamamos a un view o vista, puede ser útil para mostrar información común en varios métodos sin tener que reescribir muchas líneas de código en los controladores. 

¿Cómo funciona ?

  • Con ejemplo. Digamos que tenemos un menu el cual es inflado con una consulta a la base de datos y se debe mostrar en todas la páginas o secciones del sitio web.
  • Resulta que cada vez que invocamos al menu debemos realizar la misma consulta en cada controlador, es decir repetimos el mismo código.
  • La funcionalidad radica en que podemos encapsular ese proceso (la consulta repetitiva) en un archivo para llamarlo de la misma manera, optimizando la reducción de código.

1.- Implementación de un viewComposer

En este  caso estamos implementando un archivo llamado MenuComposer dentro de una carpeta llamada app/Http/ViewComposer.

Básicamente es aqui donde podemos realizar la consulta a la tabla, para el ejemplo estamos usando un array con dos elementos asociativos.

 

 

2.- Creación del Provider

Provider en Laravel 8

 

3.- Registro del Provider

Para ello abrimos el archivo llamado app.php ubicado en config/  donde debemos agregar la siguiente línea de código en el array de provider

        App\Providers\ComposerServiceProvider::class,

4.- Vista a mostrar

Finalmente un ejemplo de uso, en este caso implementamos en la vista welcome, en realidad podemos tratarlo en cualquier sección del sitio web.

  <body>

        <ul>
            
            @if (!empty($categoria))
                @foreach ($categoria as $item)
                <li>{{$item['slug'] }}</li>
                @endforeach    
            @endif            

        </ul>       
        
    </body>

Obviamente como se muestra estamos usando un array, por tanto el blade a mostrar es distinto que usar una colección como resultado de una consulta eloquent.

Nos vemos en otro tutorial de este maravilloso Framework para aplicaciones web Laravel.

No tiene descargable

Comparte el código!...talvez tu amigo lo necesite!

Whatsapp Messenger Facebook Twitter

Visitado 227 veces | Publicado hace 1 mes

Curso Flutter y Laravel Tienda Delivery

Mira el temario del curso en el siguiente link

VER EL CURSO

Logo Codea App

Develop your code

Perú, México, Colombia, España, Venezuela, Argentina, Bolivia

You Fb Tik Pin

© Todos los derechos reservados CODEA APP | Cursos de programación avanzados con proyectos reales | 2020 - 2021