vistes i layouts en laravel 11 (views)

Created at: 2022-08-04 21:15:00 | Updated at: 2025-01-20 11:16:43

 

Vistes i Layouts en Laravel 11

En Laravel 11, el sistema de vistes i layouts es basa en Blade, el motor de plantilles integrat que permet escriure codi de manera més neta i reutilitzable.

? Com funcionen les vistes en Laravel 11?

Les vistes són arxius .blade.php que es troben a la carpeta resources/views/ i serveixen per mostrar la interfície d'usuari. Es poden retornar des d'un controlador amb:

return view('nom_de_la_vista');


I en el controlador pots carregar-la així:

use Illuminate\Support\Facades\Route;

Route::get('/', function () {
    return view('home');
});

? Layouts en Laravel 11

Els layouts són plantilles mestres que s’utilitzen per evitar repetir el mateix codi a diverses vistes. Laravel permet crear un layout principal i després inserir-hi contingut dinàmic.

? 1. Crear un layout principal (layouts/app.blade.php)

Situat a resources/views/layouts/app.blade.php, pot contenir l’estructura HTML bàsica:

? 2. Crear una vista que utilitza el layout (home.blade.php)

@extends('layouts.app')

@section('title', 'Inici')

@section('content')
    <h2>Benvingut a la meva aplicació Laravel 11</h2>
    <p>Aquesta és la pàgina principal.</p>
@endsection

? Explicació:
  • @extends('layouts.app') indica que aquesta vista hereta de app.blade.php.
  • @section('title', 'Inici') defineix el contingut de la secció @yield('title').
  • @section('content') omple la secció @yield('content') del layout.

? Passar dades a les vistes

El controlador pot enviar dades a la vista així:

use Illuminate\Support\Facades\Route;

Route::get('/home', function () {
    return view('home', ['nom' => 'Joan']);
});

A la vista, pots accedir-hi així:

<p>Hola, {{ $nom }}</p>

? Si la variable pot ser null, usa {{ $nom ?? 'Usuari' }} per evitar errors.

? Components Blade (Laravel 11)

Laravel també té components, que permeten reutilitzar parts de la interfície.

? 1. Crear un component (resources/views/components/button.blade.php)

<button class="btn">{{ $slot }}</button>

? 2. Utilitzar-lo en una vista

<x-button>Fes clic aquí</x-button>

? Conclusió

Amb Laravel 11, el sistema de vistes és molt flexible i eficient! ? 

No valid image directory found or the category is not valid for the gallery.

Back to Posts
vistes i layouts en laravel 11 (views)

Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.