Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:frameworks:laravel:uso_de_vistas

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:programacion:php:frameworks:laravel:uso_de_vistas [2025/02/12 16:42] – [Componentes] tempwininformatica:programacion:php:frameworks:laravel:uso_de_vistas [2025/03/03 14:24] (actual) – [Crear plantillas para las vistas] tempwin
Línea 386: Línea 386:
 </div> </div>
 </html> </html>
 +</code>
 +
 +==== Componentes de clase ====
 +
 +Con los componentes de clase podremos separar la lógica de la vista. En el apartado anterior, en ''resources/views/components/alert.blade.php'' hemos colocado lógica para establecer un estilo CSS según ciertas variables.
 +
 +<code>
 +php artisan make:component Alert2
 +</code>
 +
 +Se creará ''app/View/Component/Alert2.php''. Esta clase está renderizando una vista que está en ''resources/views/components/alert2.blade.php''.
 +
 +Ahora moveremos la lógica de ''resources/views/components/alert.blade.php'' a ''app/View/Component/Alert2.php'':
 +
 +<code php>
 +
 +</code>
 +
 +Y en la vista (''resources/views/components/alert2.blade.php'') tendremos:
 +
 +<code php>
 +<div {{ $attributes->merge(['class' => 'p-4 text-sm ]
 +    <span class="font-medium">{{ $title ?? 'Info Alert'
 +</code>
 +
 +En la vista ''home.blade.php'', podríamos llamar al componente Alert2 de la siguiente manera:
 +
 +<code php>
 +// ...
 +<x-alert2 type="danger" class="mb-4">
 +    <x-slot name="title">
 +        Título de la alerta
 +    </x-slot>
 +    
 +    Contenido de la alerta
 +</x-alert2>   
 </code> </code>
 ===== Crear plantillas para las vistas ===== ===== Crear plantillas para las vistas =====
Línea 391: Línea 427:
 Para cuando tengamos componentes que se repitan. Para cuando tengamos componentes que se repitan.
  
-Creamos, por ejemplo, ''reseources/views/layouts/master.blade.php'':+<WRAP center round info 60%> 
 +Parece ser que lo habitual no es hacer esto para la creación de plantillas sino usar componentes. 
 +</WRAP> 
 + 
 +Creamos, por ejemplo, ''resources/views/layouts/master.blade.php'':
  
 <code html5> <code html5>
informatica/programacion/php/frameworks/laravel/uso_de_vistas.1739374962.txt.gz · Última modificación: por tempwin