Laravel komponente su napredna funkcija koju dodaje sedma verzija laravela. U ovom članku ćemo vidjeti što je komponenta, kako je kreirati, kako koristiti komponente u blade modelu i kako parametrizovati komponentu prosljeđivanjem parametara.
Komponenta je dio koda koji možemo ponovo koristiti u bilo kojem bladeu šablona. To je nešto poput sekcija, izgleda i uključuje. Na primjer, koristimo isto zaglavlje za svaki predložak, tako da možemo kreirati komponentu zaglavlja, koju možemo ponovo koristiti.
Druga upotreba komponenti za bolje razumijevanje je kao da trebate koristiti dugme za registraciju na web stranici na mnogim mjestima kao što su zaglavlje, podnožje ili bilo gdje drugdje na web stranici. Zatim kreirajte komponentu koda tog gumba i ponovo je koristite.
Na primjer, napravimo komponentu Header
Sa'Artisan
:
php artisan make:component Header
Ova naredba kreira dvije datoteke u vašem laravel projektu:
Header.php
unutar direktorija app/http/View/Components
;header.blade.php
unutar direktorija resources/views/components/
.Također možete kreirati komponente u poddirektoriju, kao što su:
php artisan make:component Forms/Button
Ova komanda će kreirati komponentu dugmeta u direktorijumu App\View\Components\Forms
a blade datoteka će biti smještena u direktorij resources/views/components/forms.
Za prikazivanje komponente u HTML blade fajlu, koristićemo ovu sintaksu:
Prvo ubacimo neki HTML kod u datoteku header.blade.php
komponente.
<div><h1> Header Component </h1></div>
sada kreirajte datoteku za pregled users.blade.php
u folderu imovine, gdje možemo koristiti komponentu zaglavlja.
<x-header /><h1>User Page</h1>
sada, kroz sistem rutiranje laravel-a, pozivamo blade da prikažemo rezultat u pretraživaču
Za prosljeđivanje podataka komponenti Blade
koristi se sljedeća sintaksa, specificirajući vrijednost koja se odnosi na parametar unutar elementa HTML
:
<x-header message=”Utenti” />
Na primjer, koristili smo prethodnu komponentu u datoteci users.blade.php.
Trebao bi defizavršite podatke komponente u datoteci header.php. Svi podaci o javnim varijablama automatski su bili dostupni za prikaz komponente.
Dodajte kod u datoteku header.php unutar app/http/View/Components/ direktorija .
<?php
namespace App\View\Components;
use Illuminate\View\Component;
class Header extends Component{
/*** The alert type.** @var string*/
public $title = "";
public function __construct($message){
$this->title = $message;
}
}
Kao što vidite, metod konstruktora klase postavlja promenljivu $title
sa vrijednošću parametra proslijeđenom komponenti. Sada dodajte varijablu $title
u datoteci komponente header.blade.php
za prikaz prošlih podataka.
<div> <h1> {{$title}}'s Header Component </h1> </div>
Sada će ovi preneseni podaci komponente biti prikazani u pretraživaču.
Slično, ovu komponentu možete koristiti na drugoj stranici za vizualizaciju s različitim podacima, kreiranjem druge datoteke vizualizacije blade
contact.blade.php
i dodajte kod komponente ispod da prikažete proslijeđene podatke.
<x-header message=”Contact Us” />
U komponenti, ponekad morate navesti dodatne HTML atribute, kao što je ime CSS klase, možete ga dodati direktno.
<x-header class=”styleDiv” />
Ercole Palmeri
Princip segregacije interfejsa je jedan od pet SOLID principa objektno orijentisanog dizajna. Razred treba da ima…
Microsoft Excel je referentni alat za analizu podataka, jer nudi mnoge mogućnosti za organiziranje skupova podataka,…
Walliance, SIM i platforma među vodećima u Evropi u oblasti Crowdfundinga nekretnina od 2017. godine, najavljuje završetak…
Filament je "ubrzani" Laravel razvojni okvir, koji pruža nekoliko komponenti punog steka. Dizajniran je da pojednostavi proces…
„Moram se vratiti da bih završio svoju evoluciju: projektirat ću se unutar kompjutera i postati čista energija. Jednom se smjestili u…
Google DeepMind predstavlja poboljšanu verziju svog modela umjetne inteligencije. Novi poboljšani model pruža ne samo…
Laravel, poznat po svojoj elegantnoj sintaksi i moćnim karakteristikama, takođe pruža solidnu osnovu za modularnu arhitekturu. Tamo…
Cisco i Splunk pomažu korisnicima da ubrzaju svoje putovanje do Centra za sigurnosne operacije (SOC) budućnosti sa…