Ang mga bahagi ng Laravel ay isang advanced na tampok, na idinagdag ng ikapitong bersyon ng laravel. Sa artikulong ito ay titingnan natin kung ano ang bahagi, kung paano ito likhain, kung paano gamitin ang mga bahagi sa modelo ng talim at kung paano i-parameter ang bahagi sa pamamagitan ng pagpasa ng mga parameter.
Ang isang bahagi ay isang piraso ng code na maaari naming muling gamitin sa anumang template blade. Ito ay tulad ng mga seksyon, layout, at kasama. Halimbawa, ginagamit namin ang parehong header para sa bawat template, para makagawa kami ng bahagi ng Header, na magagamit namin muli.
Ang isa pang paggamit ng mga bahagi para sa mas mahusay na pag-unawa ay tulad ng kailangan mong gumamit ng register button sa website sa maraming lugar tulad ng sa header, footer o saanman sa website. Kaya gumawa ng bahagi ng button na code at muling gamitin ito.
Halimbawa, gumawa tayo ng isang bahagi Header
kasama angArtisan
:
php artisan make:component Header
Lumilikha ang command na ito ng dalawang file sa iyong proyekto sa laravel:
Header.php
sa loob ng direktoryo app/http/View/Components
;header.blade.php
sa loob ng direktoryo resources/views/components/
.Maaari ka ring lumikha ng mga bahagi sa isang subdirectory, tulad ng:
php artisan make:component Forms/Button
Ang utos na ito ay lilikha ng isang bahagi ng pindutan sa direktoryo App\View\Components\Forms
at ang blade file ay ilalagay sa resources/views/components/forms directory.
Para sa pag-render ng bahagi sa HTML blade file, gagamitin namin ang syntax na ito:
Una naming ipasok ang ilang HTML code sa file header.blade.php
ng sangkap.
<div><h1> Header Component </h1></div>
ngayon lumikha ng isang view file users.blade.php
sa folder ng mga asset, kung saan magagamit natin ang bahagi ng header.
<x-header /><h1>User Page</h1>
ngayon, sa pamamagitan ng sistema ng direksiyon ng laravel, tinatawag namin ang blade upang ipakita ang resulta sa browser
Upang ipasa ang data sa bahagi Blade
ang sumusunod na syntax ay ginagamit, na tumutukoy sa halaga na nauugnay sa parameter sa loob ng elemento HTML
:
<x-header message=”Utenti” />
Halimbawa, ginamit namin ang nakaraang bahagi sa file ng users.blade.php.
Dapat mo defitapusin ang component data sa header.php file. Ang lahat ng pampublikong variable na data ay awtomatikong magagamit para sa view ng bahagi.
Idagdag ang code sa file header.php sa loob ng direktoryo ng app/http/View/Components .
<?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;
}
}
Tulad ng nakikita mo, ang paraan ng constructor ng klase ay nagtatakda ng variable $title
na may halaga ng parameter na ipinasa sa bahagi. Ngayon idagdag ang variable $title
sa component file header.blade.php
upang ipakita ang nakaraang data.
<div> <h1> {{$title}}'s Header Component </h1> </div>
Ngayon ang ipinadalang data ng bahagi na ito ay ipapakita sa browser.
Katulad nito, maaari mong gamitin ang bahaging ito sa isa pang pahina ng visualization na may iba't ibang data, sa pamamagitan ng paglikha ng isa pang visualization file blade
contact.blade.php
at magdagdag sa ibaba ng component code upang ipakita ang naipasa na data.
<x-header message=”Contact Us” />
Sa bahagi, kung minsan kailangan mong tukuyin ang mga karagdagang katangian ng HTML, tulad ng pangalan ng klase ng CSS, maaari mo itong idagdag nang direkta.
<x-header class=”styleDiv” />
Ercole Palmeri
Noong nakaraang Lunes, inihayag ng Financial Times ang isang deal sa OpenAI. Nilisensyahan ng FT ang world-class na pamamahayag nito...
Milyun-milyong tao ang nagbabayad para sa mga serbisyo ng streaming, na nagbabayad ng buwanang bayad sa subscription. Karaniwang opinyon na ikaw ay…
Ang Coveware ng Veeam ay patuloy na magbibigay ng mga serbisyo sa pagtugon sa insidente ng cyber extortion. Mag-aalok ang Coveware ng mga kakayahan sa forensics at remediation...
Binabago ng predictive maintenance ang sektor ng langis at gas, na may makabago at proactive na diskarte sa pamamahala ng halaman.…