Como usar o SweetAlert para confirmar a exclusão do registro no Laravel 10
Neste tutorial, será apresentado como usar o SweetAlert para confirmar a exclusão do registro no Laravel 10.
Primeiramente, será mostrado como criar a função para chamar o SweetAlert com a confirmação.
Em seguida, será apresentado como exibir o SweetAlert para confirmar a exclusão.
Por fim, será mostrado como excluir o registro após a confirmação.
Download do código fonte desenvolvido na aula: Download
Curso de Laravel: Mais Detalhes do Curso
Playlist completa sobre Laravel: Acessar
Receber as aulas gratuitas do curso de Laravel: Acessar
Para começar, é utilizado como base o projeto da aula "Como usar SweetAlert2 no Laravel 10 com Vite".
Na view de listar contas, isto é, em "resources/views/contas/index.blade.php", no botão excluir, utilizado o evento onclick para chamar a função "confirmarExclusao" e enviar como parâmetro o evento e o ID da conta.
<form id="formExcluir{{ $conta->id }}" action="{{ route('conta.destroy', ['conta' => $conta->id]) }}" method="POST">
@csrf
@method('delete')
<button type="submit" class="btn btn-danger btn-sm me-1"
onclick="confirmarExclusao(event, {{ $conta->id }})">Apagar</button>
</form>
No arquivo "public/js/custom.js", criada a função "confirmarExclusao" e implementado o alerta com os botões "Cancelar" e "Confirmar exclusão". Se a exclusão for confirmada, a função chama a rota "apagar", ou seja, o método "destroy" da controller "app/Http/Controllers/ContaController.php".
function confirmarExclusao(event, contaId){
event.preventDefault();
Swal.fire({
title: 'Tem certeza?',
text: 'Você não poderá reverter isso!',
icon: 'warning',
showCancelButton: true,
cancelButtonColor: '#0d6efd',
cancelButtonText: 'Cancelar',
confirmButtonColor: '#dc3545',
confirmButtonText: 'Sim, excluir!',
}).then((result) => {
if(result.isConfirmed){
document.getElementById(`formExcluir${contaId}`).submit();
}
})
}
Baixar o código-fonte completo do projeto.
Bom, era isso. Espero que o tutorial tenha sido útil!