14 May 2025 -
penjelasan tentang SweetAlert
SweetAlert adalah library JavaScript open-source yang dirancang untuk menggantikan fungsi alert bawaan dari browser (window.alert()
), dengan tampilan yang jauh lebih menarik, modern, dan mudah disesuaikan. SweetAlert digunakan untuk membuat popup alert atau dialog box yang interaktif, seperti konfirmasi, notifikasi, peringatan, atau bahkan input dari pengguna.
Alert standar dari browser cenderung sangat sederhana, tidak bisa dikustomisasi tampilannya, dan kurang ramah pengguna. SweetAlert hadir untuk mengatasi hal ini dengan menyediakan antarmuka grafis yang lebih baik dan responsif.
SweetAlert sangat berguna untuk:
Library ini banyak digunakan dalam pengembangan aplikasi berbasis web, baik itu menggunakan JavaScript murni maupun framework seperti Vue.js, React.js, dan Laravel.
SweetAlert versi pertama sudah cukup bagus, namun SweetAlert2 hadir sebagai peningkatan besar-besaran dengan dukungan fitur yang jauh lebih kaya. Berikut tabel perbandingannya:
Fitur | SweetAlert (v1) | SweetAlert2 (v2) |
---|---|---|
Kustomisasi tombol | Terbatas | Sangat fleksibel |
Dukungan form/input | Tidak ada | Ada (teks, angka, pilihan, dll) |
Tampilan | Bagus | Lebih modern & responsif |
Dokumentasi | Terbatas | Lengkap dan aktif dikembangkan |
Animasi | Dasar | Lebih halus dan menarik |
Rekomendasi:Gunakan SweetAlert2 untuk pengembangan modern, kecuali kamu hanya butuh fitur paling dasar.
SweetAlert v1:
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
SweetAlert2:
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
Letakkan sebelum </body>
untuk performa lebih baik.
npm install sweetalert # Versi lama
npm install sweetalert2 # Versi terbaru
swal("Berhasil!", "Data telah disimpan!", "success");
Swal.fire({
title: 'Berhasil!',
text: 'Data telah disimpan dengan aman.',
icon: 'success',
confirmButtonText: 'OK'
});
Berikut fitur-fitur andalan dari SweetAlert2:
success
– Untuk pesan sukseserror
– Untuk kesalahanwarning
– Untuk peringataninfo
– Untuk informasiquestion
– Untuk pertanyaanSwal.fire({
title: 'Yakin ingin hapus?',
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#3085d6',
confirmButtonText: 'Ya, hapus!',
cancelButtonText: 'Batal'
});
Swal.fire({
title: 'Auto close dalam 3 detik',
text: 'Popup ini akan hilang otomatis.',
timer: 3000,
showConfirmButton: false
});
Swal.fire({
title: 'Masukkan nama kamu',
input: 'text',
inputLabel: 'Nama Lengkap',
showCancelButton: true,
inputValidator: (value) => {
if (!value) {
return 'Nama tidak boleh kosong!';
}
}
});
Swal.fire({
title: 'Yakin?',
text: "Data tidak dapat dikembalikan!",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Hapus'
}).then((result) => {
if (result.isConfirmed) {
// Lakukan aksi jika dikonfirmasi
Swal.fire('Terhapus!', 'Data berhasil dihapus.', 'success');
}
});
<button id="hapusBtn">Hapus</button>
<script>
$('#hapusBtn').on('click', function () {
Swal.fire('Berhasil!', 'Tombol berhasil ditekan.', 'success');
});
</script>
import Swal from 'sweetalert2';
function handleClick() {
Swal.fire('Hello React!', 'Popup dari SweetAlert2', 'info');
}
<a href="#" onclick="konfirmasiHapus()">Hapus Data</a>
<script>
function konfirmasiHapus() {
Swal.fire({
title: 'Hapus data ini?',
text: "Data akan hilang selamanya!",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, hapus!',
cancelButtonText: 'Batal'
}).then((result) => {
if (result.isConfirmed) {
window.location.href = "/delete-data";
}
});
}
</script>
then
) untuk menangani hasil aksi pengguna.SweetAlert adalah solusi modern untuk menampilkan popup alert yang lebih menarik, interaktif, dan mudah dikustomisasi dibandingkan dengan alert standar dari browser. Dengan tampilan yang elegan dan fungsionalitas yang luas, SweetAlert sangat cocok digunakan dalam berbagai proyek web untuk menampilkan pesan peringatan, notifikasi, maupun konfirmasi tindakan pengguna.
Terdapat dua versi utama: SweetAlert (v1) dan SweetAlert2 (v2), di mana SweetAlert2 menjadi pilihan yang lebih unggul karena dukungan terhadap input form, kontrol tombol lebih fleksibel, animasi yang halus, serta dokumentasi yang lebih lengkap. SweetAlert2 juga sangat mudah diintegrasikan dengan berbagai framework modern seperti jQuery, React, dan Laravel.
Penggunaan SweetAlert tidak hanya meningkatkan estetika halaman web, tetapi juga meningkatkan user experience (UX)** secara keseluruhan. Namun, penting untuk menggunakannya secara bijak agar tidak membanjiri pengguna dengan terlalu banyak popup.