Rumah >rangka kerja php >Laravel >Pembangunan Laravel: Bagaimana untuk menggunakan susun atur templat Laravel Blade?

Pembangunan Laravel: Bagaimana untuk menggunakan susun atur templat Laravel Blade?

WBOY
WBOYasal
2023-06-14 10:41:191025semak imbas

Laravel ialah rangka kerja pembangunan yang sangat baik berdasarkan PHP. Ia mempunyai kelebihan kerana mudah dipelajari, cekap dan selamat, serta amat disukai oleh pembangun WEB. Antaranya, susun atur templat Laravel Blade adalah fungsi yang sangat praktikal dalam rangka kerja Laravel Artikel ini akan menunjukkan kepada anda cara menggunakan reka letak templat Laravel Blade melalui kes sebenar.

Apakah reka letak templat Blade?

Enjin templat Blade ialah enjin paparan lalai rangka kerja Laravel Berbanding dengan enjin templat sintaks asli PHP, Blade menyokong sintaks yang lebih ringkas dan elegan serta boleh digunakan dengan lebih baik dengan rangka kerja Laravel. Reka letak templat Laravel Blade merujuk kepada membahagikan halaman web kepada gabungan modular kandungan pengepala, ekor, bar sisi dan blok untuk memudahkan pembangunan berasingan dan meningkatkan kecekapan pembangunan.

  1. Buat templat induk reka letak

Dalam Laravel, kita boleh menggunakan perintah artisan untuk menjana templat induk reka letak Langkah-langkah khusus adalah seperti berikut:

php artisan make:layout master

Selepas melaksanakan arahan ini, fail templat induk bernama master.blade.php akan dijana dalam direktori sumber/views/layouts/ projek. Buka fail dan anda boleh melihat bahawa kandungan kod adalah seperti berikut:

<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>@yield('title')</title>
</head>
<body>
    <header>
        @yield('header')
    </header>
    <nav>
        @yield('nav')
    </nav>
    <main>
        @yield('content')
    </main>
    <footer>
        @yield('footer')
    </footer>
</body>
</html>

Kita dapat melihat bahawa fail templat mengandungi blok yang berbeza seperti kepala, ekor, bar navigasi dan badan Menggunakan sintaks templat Blade @. fungsi yield() untuk menduduki ruang Fungsi @yield() di sini mentakrifkan blok templat Kami akan menggunakan fungsi @section() dalam fail paparan lain untuk mengisi blok templat ini pada masa hadapan.

  1. Ganti subview yang diwarisi

Untuk sebarang fail paparan yang perlu menggunakan reka letak, anda boleh melakukan reka letak dengan mewarisi templat utama. Buka fail paparan dan tambah kod berikut:

@extends('layouts.master')

@extends('layouts.master') di sini bermaksud fail paparan semasa mewarisi daripada susun atur fail templat utama. tuan. Seterusnya, anda boleh mengisi blok templat ini dengan nama blok templat yang ditakrifkan oleh fungsi @yield() Contohnya, anda boleh menambah kod berikut pada fail paparan:

@section('title', '页面标题')
@section('header')
    <h1>头部内容</h1>
@endsection
@section('nav')
    <ul>
        <li><a href="#">导航栏1</a></li>
        <li><a href="#">导航栏2</a></li>
        <li><a href="#">导航栏3</a></li>
    </ul>
@endsection
@section('content')
    <p>主体内容</p>
@endsection
@section('footer')
    <p>版权信息</p>
@endsection

Dalam kod di atas, @section. Fungsi () digunakan untuk mengisi bahagian templat dalam templat utama Contohnya, @section('title', 'page title') digunakan untuk mengisi teg b2386ffb911b14667cb8f0f91ea547a7 Tidak seperti templat HTML standard yang menggunakan pembolehubah untuk pengisian, templat Blade membenarkan kami mewarisi sebahagian daripada kandungan templat lain dan menjadikan pemisahan data lebih jelas.

  1. Gunakan kaedah statik Laravel View

Selain fungsi @yield() dan fungsi @section(), Laravel juga menyediakan kaedah statik View, yang disyorkan. , langkah-langkah pelaksanaan khusus adalah seperti berikut:

    <?php

    namespace AppHttpControllers;

    use IlluminateHttpRequest;
    use IlluminateSupportFacadesView;

    class HomeController extends Controller
    {
        public function index()
        {
            $data = [
                'title' => '页面标题',
                'header' => '<h1>头部内容</h1>',
                'nav' => '<ul>
                            <li><a href="#">导航栏1</a></li>
                            <li><a href="#">导航栏2</a></li>
                            <li><a href="#">导航栏3</a></li>
                          </ul>',
                'content' => '<p>主体内容</p>',
                'footer' => '<p>版权信息</p>'
            ];
            return View::make('home.index', $data);
        }
    }

Dalam kod di atas, kami menggunakan View::make untuk menjana paparan dan menghantar dalam contoh tatasusunan $data sebagai konteks pembolehubah paparan. Dalam tatasusunan ini, kami telah menentukan lima pembolehubah: $title, $header, $nav, $content, $footer, dll., yang digunakan untuk mengisi blok templat yang sepadan dalam templat utama.

  1. Gunakan struktur kawalan dalam templat Blade

Dalam templat Blade, sebagai tambahan kepada @yield() dan @section() untuk mengisi blok templat, kami juga boleh menggunakan kawalan Struktur, seperti @if, @foreach, @for, dsb., untuk melaksanakan logik khusus, pelaksanaan khusus adalah seperti berikut:

@section('content')
    <div>
        @foreach ($posts as $post)
            <h2>{{ $post->title }}</h2>
            <p>{{ substr($post->content, 0, 100) }}</p>
        @endforeach
    </div>
@endsection

Dalam kod ini, kami menggunakan pernyataan gelung @foreach untuk melintasi tatasusunan $posts, dan gunakan { { $post->title }} dan {{ substr($post->content, 0, 100) }} untuk mengeluarkan tajuk artikel dan kandungan ringkas.

Ringkasan

Di atas ialah demonstrasi kes praktikal tentang cara menggunakan reka letak templat Laravel Blade Penggunaan reka letak templat Laravel Blade boleh meningkatkan kecekapan pembangunan aplikasi WEB, dan juga menjadikan perniagaan logik dan Pemisahan pandangan lebih jelas. Sudah tentu, sebagai tambahan kepada ini, rangka kerja Laravel mempunyai banyak ciri berkuasa yang patut diterokai.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan susun atur templat Laravel Blade?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn