Vytváření rozvržení pomocí Laravel – Vytváření flexibilních a udržovatelných rozhraní

V Laravel, layout hraje významnou roli při vytváření uživatelského rozhraní pro webovou aplikaci. Rozvržení představuje celkovou strukturu webové stránky, včetně běžných sekcí, jako jsou header, footer  a sidebar. V tomto článku prozkoumáme, jak zabudovat rozvržení Laravel pro vytvoření flexibilních a udržovatelných rozhraní.

Nejprve si vytvoříme základní layout pro naše webové stránky. Začněte vytvořením souboru s názvem app.blade.php v adresáři. Tento soubor bude sloužit jako hlavní rozvržení pro celý web. resources/views/layouts

Zde je příklad obsahu souboru app.blade.php:

<!DOCTYPE html>  
<html>  
<head>  
    <title>@yield('title')</title>  
    <link rel="stylesheet" href="{{ asset('css/app.css') }}">  
</head>  
<body>  
    <header>  
        <h1>Header</h1>  
    </header>  
  
    <nav>  
        <ul>  
            <li><a href="/">Home</a></li>  
            <li><a href="/about">About</a></li>  
            <li><a href="/contact">Contact</a></li>  
        </ul>  
    </nav>  
  
    <main>  
        @yield('content')  
    </main>  
  
    <footer>  
        <p>Footer</p>  
    </footer>  
  
    <script src="{{ asset('js/app.js') }}"></script>  
</body>  
</html>  

V tomto rozložení používáme @yield direktivy k definování dynamických sekcí v rámci rozložení. Například @yield('title') umožňuje dítěti přepsat a nastavit název stránky. Podobně umožňuje dítěti vložit hlavní obsah stránky. views @yield('content') views

Jakmile je rozložení vytvořeno, můžeme vytvořit potomka, který toto rozložení využije. Chcete-li například vytvořit stránku s podobným rozložením, vytvořte soubor s názvem v adresáři. Tento soubor rozšíří  rozvržení a definuje konkrétní obsah stránky: views about about.blade.php resources/views app.blade.php about

@extends('layouts.app')  
  
@section('title', 'About')  
  
@section('content')  
    <h2>About Page</h2>  
    <p>This is the about us page.</p>  
@endsection  

Ve výše uvedeném příkladu používáme @extends direktivu ke zdědění app.blade.php  rozložení. Dále použijeme @section direktivu k definování konkrétního obsahu pro sekce title  a content  stránky.

Nakonec musíme definovat cesty k propojení URL s příslušným. views

routes/web.php  Do souboru můžete například přidat následující trasy:

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

V tomto příkladu je URL "/" propojeno s welcome.blade.php view, zatímco /about URL je propojeno s about.blade.php view.

Závěrem lze říci, že rozvržení budovy Laravel vám umožňuje vytvořit sdílené rozhraní pro vaši webovou aplikaci a spravovat běžné sekce, jako jsou header, footer a sidebar. Pomocí rozložení a potomka můžete vytvářet flexibilní a udržovatelná rozhraní v. views Laravel