Delete Confirmation Modal Component - Livewire
Tech Stack: tailwindcss, alpine-js, livewire
Demo
Name | Delete | |
---|---|---|
Georgiana Brekke | bill.jones@example.com | |
Gilberto McLaughlin | jdibbert@example.com | |
Alf Bahringer | walker27@example.com | |
Sarah Kling | friesen.winona@example.org | |
Dawson Raynor | ernesto.deckow@example.org | |
Stewart Marks Jr. | michelle10@example.com | |
Miss Cecile Hane V | valentine.schaefer@example.net | |
Vernice McGlynn | ogreen@example.net | |
Keshaun Purdy | macy.dare@example.org | |
Catherine Wintheiser | little.carey@example.net |
Code
Please login to View/Download the Code
Please login to View/Download the Code
Sorry, this component's code is restricted
Get Livewiredemos-Pro
Sorry, this component's code is restricted
Get Livewiredemos-Pro
Usage
Include the component on the page from where you want to invoke the modal. You can also choose it and include it on the gobal template
@livewire('delete-modal-component')
To invoke the confirmation modal with the click of the delete button. You can emit the event to the model using Livewire's dispatchTo
method.
Here is an example of emitting the event through Alpine JS
<button x-data="{}"
@click="Livewire.dispatchTo(`delete-modal-component`,`showModal`, {
modelType: `App\\Models\\Accommodation`,
modelId: {{$accommodation->AccomodationTypeID}},
modalHeading: `Delete Accommodation`,
modalMessage: `Are you sure you want to delete accommodation {{$accommodation->Description}}?`,
})" class="text-red-600 hover:text-red-900">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6">
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
</svg>
</button>
Here, we are passing four parameters in the emitTo method.
- Component where we want to send the event (delete-modal-confirm in this case)
- Method to which we want to send the event to (showModal in this demo)
- Modal which you want to delete (App\\Models\\DummyUser) in this example
- Id of the modal which we are looking to delete
- Modal Heading
- Modal Message.