Laravel Livewire | Click Event Example

Raviya Technical
2 min readDec 4, 2021

Here, I will give you a very simple example of a click event in laravel livewire. we will take two buttons and call two functions of the livewire class. one will be simple and another will be with argument. you can easily do click event with laravel 6, laravel 7, and laravel 8 versions.

Step 1: Install Laravel

first of all, we need to get a fresh Laravel version application using bellow command, So open your terminal OR command prompt and run bellow command:

composer create-project --prefer-dist laravel/laravel blog

Step 2: Install Livewire

now in this step, we will simply install livewire to our laravel application using the below command:

composer require livewire/livewire

Step 3: Create Component

Now here we will create a livewire component using their command. so run the below command to create clickEvent component.

php artisan make:livewire clickEvent

Now they created files on both paths:

app/Http/Livewire/ClickEvent.phpresources/views/livewire/click-event.blade.php

Now both files we will update as below for our contact us form.

app/Http/Livewire/ClickEvent.php

<?phpnamespace App\Http\Livewire;use Livewire\Component;class ClickEvent extends Component{public $message = '';public $user_id = 42;/*** Write code on Method** @return response()*/public function render(){return view('livewire.click-event')->extends('layouts.app');}/*** Write code on Method** @return response()*/public function callFunction(){$this->message = "You clicked on button";}/*** Write code on Method** @return response()*/public function callFunctionArg($user_id){$this->message = $user_id;}}

resources/views/livewire/click-event.blade.php

<div><button type="button" wire:click="callFunction" class="btn btn-danger">Click Me</button><button type="button" wire:click="callFunctionArg({{$user_id}})" class="btn btn-danger">Click Me!</button><p>{{ $message }}</p></div>

Step 4: Create Route

now we will create one route for calling our example, so let’s add a new route to web.php file as below:

<?phpuse Illuminate\Support\Facades\Route;
use App\Http\Livewire\ClickEvent;
Route::get('click-event', ClickEvent::class);

Step 5: Create View File

here, we will create a blade file for the call form route. in this file, we will use @livewireStyles, @livewireScripts. so let’s add it.

resources/views/layouts/app.blade.php

<!DOCTYPE html><html><head><title>Laravel Livewire Example - raviyatechnical</title>@livewireStyles<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script><link href="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css"><script src="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js"></script></head><body><div class="container">@yield('content')</div></body>@livewireScripts</html>

Now you can run using the below command:

php artisan serve

Open bellow URL:

localhost:8000/click-event

--

--