Laravel View Creator können Sie Daten sofort nach der Ansicht der Instanziierung als Combinator ansehen, was sie ideal für die Einrichtung der erforderlichen Ansichtsdaten oder die Optimierung der Leistung macht.
Schauen wir uns ein praktisches Beispiel für die Verwaltung dynamischer Anwendungsmenüs an:
Registrieren Sie zunächst den Ansichtsersteller:
use Illuminate\Support\Facades\View; // 注册视图创建器 View::creator('dashboard', DashboardCreator::class);
Definieren Sie als nächstes die Klasse der View Creator:
<?php namespace App\View\Creators; use App\Services\MenuService; use Illuminate\View\View; use Illuminate\Support\Facades\Auth; class ApplicationMenuCreator { protected $menuService; public function __construct(MenuService $menuService) { $this->menuService = $menuService; } public function create(View $view) { $user = Auth::user(); $view->with([ 'mainMenu' => $this->menuService->getMainMenu($user), 'quickActions' => $this->menuService->getQuickActions($user), 'recentItems' => $this->menuService->getRecentItems($user), 'notifications' => $this->menuService->getPendingNotifications($user) ]); } }
Register anzeigen Ersteller in Ihrem AppServiceProvider
:
// 在你的 AppServiceProvider public function boot() { View::creator('layouts.app', ApplicationMenuCreator::class); }
Verwenden Sie zuletzt Daten in layouts/app.blade.php
:
<div class="sidebar"> <nav> @foreach($mainMenu as $menuItem) <a class="https://www.php.cn/link/a754fc1765a45a6bc1a034140afd0669'active'] ? 'active' : '' }}" href="https://www.php.cn/link/a754fc1765a45a6bc1a034140afd0669'url'%5D%20%7D%7D"> https://www.php.cn/link/a754fc1765a45a6bc1a034140afd0669'label'] }} </a> @endforeach </nav> @if(count($quickActions)) <div class="quick-actions"> @foreach($quickActions as $action) {{ $action['label'] }} @endforeach </div> @endif </div>
Creator View Creator bietet eine frühzeitige Datenvorbereitung für Ihre Ansichten und stellt sicher, dass kritische Daten unmittelbar nach der Ansicht der Instanziierung verfügbar sind. Dies hilft, die Anwendungsleistung und die Wartbarkeit der Code zu verbessern.
Das obige ist der detaillierte Inhalt vonFrühe Ansichtsdatenvorbereitung mit Laravel View Creators. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!