Laravel Bladeフラグメントは、HTMXやTurboなどのフレームワークに完全に適した部分ページの更新に対する合理化されたアプローチを提供します。 このサーバー側のソリューションは、Laravelの使いやすさを犠牲にすることなく、双方向性を向上させます。 ブレードフラグメントを使用して
ここにフラグメントを定義して使用する基本的な例があります:
<!-- 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');
現実世界アプリケーション:ライブ通知システム
ライブ通知システムで説明しましょう:
<?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'); } }
これは、ブレードフラグメントがページの一部を更新するためのクリーンで効率的な方法を提供する方法を示しており、最新のWeb開発のベストプラクティスと完全に一致しています。 プログレッシブエンハンスメントテクニックとの統合により、Laravelエコシステムの強力なツールになります。
以上がLaravel Blade Fragmentsを使用した動的ページの更新の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。