Rumah > pembangunan bahagian belakang > tutorial php > Kemas kini halaman dinamik dengan serpihan bilah laravel

Kemas kini halaman dinamik dengan serpihan bilah laravel

百草
Lepaskan: 2025-03-05 16:11:20
asal
274 orang telah melayarinya

Dynamic Page Updates with Laravel Blade Fragments

Serpihan pisau Laravel menawarkan pendekatan yang diperkemas untuk kemas kini halaman separa, sangat sesuai untuk rangka kerja seperti HTMX atau Turbo. Penyelesaian sisi pelayan ini meningkatkan interaktiviti tanpa mengorbankan kemudahan penggunaan Laravel.

Menggunakan serpihan bilah

Berikut adalah contoh asas untuk menentukan dan menggunakan serpihan:

<!-- Blade template -->
@fragment('notification-list')
    <div class="notifications">
        @foreach($notifications as $notification)
            <div class="alert">
                {{ $notification->message }}
            </div>
        @endforeach
    </div>
@endfragment

<!-- Controller -->
return view('dashboard')->fragment('notification-list');
Salin selepas log masuk

Aplikasi dunia nyata: Sistem Pemberitahuan Langsung

mari kita ilustrasikan dengan sistem pemberitahuan langsung:

<?php

namespace App\Http\Controllers;

use App\Models\Notification;
use Illuminate\Http\Request;

class NotificationController extends Controller
{
    public function store(Request $request)
    {
        $notification = Notification::create([
            'user_id' => auth()->id(),
            'message' => $request->message,
            'type' => $request->type
        ]);

        if ($request->hasHeader('HX-Request')) {
            return view('notifications.index', [
                'notifications' => auth()->user()->notifications()->latest()->get()
            ])->fragmentIf(
                $request->hasHeader('HX-Request'),
                'notification-list'
            );
        }

        return back();
    }

    public function clear(Request $request)
    {
        auth()->user()->notifications()->delete();

        return view('notifications.index', [
            'notifications' => collect()
        ])->fragment('notification-list');
    }
}
Salin selepas log masuk
Struktur templat yang sepadan:

<div class="container">
    @fragment('notification-list')
        <div class="notification-wrapper">
            @forelse($notifications as $notification)
                <div class="alert alert-{{ $notification->type }}">
                    {{ $notification->message }}
                    {{ $notification->created_at->diffForHumans() }}
                </div>
            @empty
                <p>No notifications</p>
            @endforelse
        </div>
    @endfragment
</div>
Salin selepas log masuk
Ini menunjukkan bagaimana serpihan bilah menyediakan kaedah yang bersih dan cekap untuk mengemas kini bahagian halaman, menjajarkan dengan sempurna dengan amalan terbaik pembangunan web moden. Integrasi dengan teknik peningkatan progresif menjadikannya alat yang berkuasa dalam ekosistem Laravel.

Atas ialah kandungan terperinci Kemas kini halaman dinamik dengan serpihan bilah laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan