Search code examples
laravellaravel-livewirelivewires

laravel 8x livewire give Undefined variable when livewire use


i'm confusing of this code. i dont know why this be error. this is the livewire function :

public $members;

public function render()
{
    $this->members = "members";

    return view('livewire.members');
}

and the view :

<div>
    <h1>{{$members}}</h1>
</div>

but i got this error enter image description here


Solution

  • Try to define your variable before render.

    public $members = 'members';
    
    // or
    
    public function mount()
    {
        $this->members = "members";
    }
    
    public function render()
    {
        $this->members = 'members';
    
        return view('livewire.members');
    }
    

    For Laravel. Pass your variable to the view.

    public function render()
    {
        $members = "members";
        // $this->members = "members";
    
        return view('livewire.members', ['members' => $members]);
        // return view('livewire.members', ['members' => $this->members]);
    }