Swal.fire() — это основная функция библиотеки
SweetAlert2, предназначенная для отображения модальных окон. Она
предоставляет простой и интуитивно понятный способ создания различных
типов всплывающих уведомлений, таких как предупреждения, ошибки, успехи
и запросы подтверждения. Метод принимает различные параметры, что
позволяет гибко настраивать внешний вид и функциональность модальных
окон.
Метод Swal.fire() принимает объект с параметрами,
которые определяют поведение модального окна. Пример базового
вызова:
Swal.fire({
title: 'Привет, мир!',
text: 'Это стандартное уведомление.',
icon: 'info'
});
В данном примере:
title: заголовок уведомления.text: текст, отображаемый под заголовком.icon: иконка уведомления, которая может быть одной из
следующих: success, error,
warning, info, question.В параметрах объекта, передаваемого в Swal.fire(), можно
указать различные опции для настройки модального окна.
title: строка, которая отображается
как заголовок окна. Это обязательный параметр.text: строка, которая отображается под
заголовком. Может быть пустой или опциональной.html: альтернативный параметр для
вывода содержимого в формате HTML. Используется, если необходимо
добавить теги HTML или выполнить кастомную разметку внутри модального
окна.Пример с HTML:
Swal.fire({
title: 'Ошибка!',
html: '<b>Внимание</b>: Что-то пошло не так.'
});
icon: определяет тип иконки,
которая будет отображаться в модальном окне. Возможные значения:
success — иконка успеха.error — иконка ошибки.warning — иконка предупреждения.info — иконка информации.question — иконка вопроса.Пример с иконкой:
Swal.fire({
title: 'Успех!',
text: 'Операция прошла успешно.',
icon: 'success'
});
confirmButtonText: текст кнопки
подтверждения.cancelButtonText: текст кнопки
отмены.showCancelButton: булевое значение,
указывающее, должна ли отображаться кнопка отмены.Если showCancelButton установлен в true, то
появляется дополнительная кнопка “Отмена”. Пример:
Swal.fire({
title: 'Вы уверены?',
text: 'Вы хотите продолжить?',
icon: 'question',
showCancelButton: true,
confirmButtonText: 'Да',
cancelButtonText: 'Нет'
});
timer: определяет время в
миллисекундах, по истечении которого уведомление будет автоматически
закрыто. Если не указан, окно не закроется автоматически.Пример авто-закрытия через 3 секунды:
Swal.fire({
title: 'Информация',
text: 'Это уведомление закроется через 3 секунды.',
icon: 'info',
timer: 3000
});
SweetAlert2 предоставляет возможность настроить внешний вид и анимацию модальных окон.
showClass и
hideClass: задают анимацию появления и
исчезновения. Можно передать объект с параметрами для анимации,
например:Swal.fire({
title: 'Анимация!',
text: 'Это окно с кастомной анимацией.',
icon: 'info',
showClass: { popup: 'swal2-zoom-in' },
hideClass: { popup: 'swal2-zoom-out' }
});
position: параметр для настройки
расположения окна на экране. Доступные значения:
top-starttop-endcenterbottom-startbottom-endПример:
Swal.fire({
title: 'Тестирование расположения',
text: 'Окно появляется в верхней правой части экрана.',
position: 'top-end',
icon: 'info'
});
Метод Swal.fire() позволяет задать функции, которые
будут выполняться после закрытия модального окна.
didOpen: вызывается после того, как
окно было открыто.willClose: вызывается перед закрытием
окна.Пример с функцией после открытия:
Swal.fire({
title: 'Окно открылось',
text: 'После открытия окна, выполняется функция.',
icon: 'info',
didOpen: () => {
console.log('Окно открылось!');
}
});
Swal.fire() возвращает объект с результатом, который
можно использовать для обработки действий пользователя. Это позволяет
узнать, был ли нажат “Ок” или “Отмена” и выполнить соответствующие
действия.
Результат имеет форму объекта, в котором присутствуют следующие свойства:
isConfirmed: true, если
нажата кнопка подтверждения.isDismissed: true, если
нажата кнопка отмены или закрыта кнопка по таймеру.value: возвращаемое значение
(например, текст с полей ввода).Пример:
Swal.fire({
title: 'Вы уверены?',
text: 'Вы хотите выполнить это действие?',
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Да',
cancelButtonText: 'Нет'
}).then((result) => {
if (result.isConfirmed) {
console.log('Действие подтверждено');
} else {
console.log('Действие отменено');
}
});
SweetAlert2 позволяет интегрировать в модальные окна различные элементы, такие как текстовые поля, радиокнопки, чекбоксы, а также создавать более сложные уведомления с формами для ввода данных.
Для добавления поля ввода можно использовать параметр
input, который поддерживает различные типы
ввода:
text — текстовое поле.email — поле для ввода email.password — поле для ввода пароля.Пример с текстовым полем:
Swal.fire({
title: 'Введите ваше имя',
input: 'text',
inputPlaceholder: 'Имя'
}).then((result) => {
if (result.value) {
console.log('Введенное имя: ' + result.value);
}
});
Метод Swal.fire() — это мощный инструмент для создания
модальных окон с множеством настроек и опций, который позволяет
значительно улучшить взаимодействие с пользователем в веб-приложениях.
Его гибкость и удобство делают его одним из самых популярных решений для
отображения уведомлений и взаимодействия с пользователем.