در حال بارگزاری ...

معرفی پکیج Tag Helper در لاراول

توسط الهام غایب
آخرین به روز رسانی شنبه 27 دی 1399

Tag Helper پکیجی در لاراول است که جهت افزودن tag helperهای قدرتمند HTML به یک اپلیکیشن لاراول ایجاد شده است. با لیداوب همراه باشید تا با این پکیج بیشتر آشنا شوید. یکی از ویژگی‌های&nb

Tag Helper پکیجی در لاراول است که جهت افزودن tag helperهای قدرتمند HTML به یک اپلیکیشن لاراول ایجاد شده است. با لیداوب همراه باشید تا با این پکیج بیشتر آشنا شوید.


یکی از ویژگی‌های این پکیج این است که شامل تعدادی از helper‌های خلاقانه و جدید است که می‌توان آن‌ها را در یک اپلیکیشن لاراول مورد استفاده قرار داد. احتمالا شما تا کنون یک فرم معمولی با یک ورودی مخفی CSRF داشتهاید:

<form method="post" action="/profile">
    @method('PUT')
    @csrf
</form>

با استفاده از پکیج tag helper در لاراول، می‌توانید آن را به صورت زیر بنویسید:

<form csrf method="put">
  {{-- ... --}}
</form>

خروجی به همان شکلی که انتظار داریم، خواهد بود:

<form method="post">
    <input type="hidden" name="_method" value="PUT">
    <input type="hidden" name="_token" value="csrf-token">    
</form>

یکی دیگر از helperهای تعبیه شده در این پکیج link helper است:

<a route="home">Home</a>
<a route="profile" :route-parameters="[$user->id()]">
  Home
</a>

Tag helper های سفارشی در لاراول

این پکیج با ثبت tag helperها در یک متد boot() در service provider کار می‌کند. شما می‌توانید عناصر و ویژگی‌های خاصی را انتخاب کنید که باعث می‌شود بتوانید فراخوانی یک process()  در کلاس helper در طول عمل رندر کردن انجام دهید. در زیر مثالی از  فایل readme پروژه را مشاهده می‌کنید:

<?php

namespace BeyondCode\TagHelper\Helpers;

use BeyondCode\TagHelper\Helper;
use BeyondCode\TagHelper\Html\HtmlElement;

class CustomTagHelper extends Helper
{
    protected $targetAttribute = 'custom';

    protected $targetElement = 'div';

    public function process(HtmlElement $element)
    {
        // Manipulate the DOM element
    }
}

در داخل متد process() می‌توانید تگ عنصر html را سفارشی سازی کنید. برای مثال، اگر شما یک عنصر سفارشی داشته باشید که بخواهید به صورت لینک رندر شود، باید به صورت زیر عمل کنید:

<?php

namespace BeyondCode\TagHelper\Helpers;

use BeyondCode\TagHelper\Helper;
use BeyondCode\TagHelper\Html\HtmlElement;

class CustomLink extends Helper
{
    protected $targetElement = 'my-custom-link';

    public function process(HtmlElement $element)
    {
        // Example
        // <my-custom-link></my-custom-link>
        $element->setTag('a');
        $element->setAttribute('href', 'https://laravel-news.com');
    }
}

برای نصب این پکیج از طریق کامپوزر می‌توانید از دستور  composer require beyondcode/laravel-tag-helper استفاده کنید. برای آشنایی بیشتر با این پکیج و دستور العمل‌های آن می‌توایند سری به GitHub بزنید.

آشنایی با سایر پکیج‌های لاراول:

برای آشنایی با سایر پکیج‌های فریم ورک لاراول، می‌توانید مقالات لاراول ما در لیداوب را دنبال کنید.

دیدگاه ها

دیدگاه ها : 0


متاسفانه فقط اعضای سایت قادر به ثبت دیدگاه هستند

رایگان

اشتراک گذاری در
سورس خرید و فروش ارزهای دیجیتال
ثبت امتیاز
0.5 (2 رای)

   لطفا صبر کنید ...