Cara Passing Parameter Pada Component Laravel

Jika kalian ingin mempassing data pada sebuah component laravel contoh seperti berikut ini :

<x-kabupaten-component :kabId="$kabupaten_id" />

Yang dimana kita akan mengirim sebuah parameter kabupaten_id ke komponent kabupaten component yang selanjutnya di directory app/View/Components/KabupatenComponent.php kita bisa tambahkan di constructnya kurang lebih menjadi seperti ini :

<?php

namespace App\View\Components;

use App\Models\Kabupaten;
use Illuminate\View\Component;

class KabupatenComponent extends Component
{
    public $kab_id;
    public $kabupaten;
    /**
     * Create a new component instance.
     *
     * @return void
     */
    public function __construct($kabId)
    {
        //
        $this->kab_id = $kabId;
        $this->kabupaten = Kabupaten::get();
    }

    /**
     * Get the view / contents that represent the component.
     *
     * @return \Illuminate\Contracts\View\View|\Closure|string
     */
    public function render()
    {

        return view('components.kabupaten-component');
    }
}

Kita bisa melihat function __construct($kabId) yang dimana $kabId ini harus sama dengan yang dikirim dari component lalu $this->kab_id adalah variabel yang nanti di tangkap di view sebuah komponent jadi di view componentnya menjadi seperti ini :

<div class="form-group">
    <label for="" class="col-sm-8 control-label">KAB/KOTA</label>
    <div class="col-sm-12">
        <select name="dealer" class="form-control select2 kabkot">
            <option value="">Silahkan Pilih Kab/Kota {{ $kab_id }}</option>
            @foreach ($kabupaten as $k)
                <option value="{{ $k->id }}" {{ ($k->id == $kab_id) ? 'selected' : ''}}>{{ $k->nama_kabupaten }}</option>
            @endforeach
        </select>
    </div>
</div>

Sehingga kita bisa memberi kondisi, Demikianlah artikel singkat tentang komponen pada laravel.

 

Related Articles

Comments