Метод stop() в Noty используется для
управления жизненным циклом уведомлений. Он позволяет программно
останавливать автоматическое скрытие уведомления и предотвращает его
исчезновение до явного вызова методов close() или других
управляющих функций. Этот метод особенно полезен в сценариях, где
требуется, чтобы уведомление оставалось видимым до завершения
определённого процесса или действия пользователя.
notyInstance.stop();
new Noty({...}).Noty по умолчанию закрывает уведомления автоматически через интервал,
заданный свойством timeout. Метод stop()
прерывает этот автоматический таймер, фиксируя уведомление на экране.
Важно отметить, что:
timeout не задан, уведомление изначально будет
оставаться на экране до закрытия вручную. В этом случае
stop() не оказывает заметного эффекта, но безопасен для
вызова.stop()
может не предотвратить окончание анимации закрытия.let notification = new Noty({
text: 'Загрузка данных...',
type: 'info',
timeout: 5000, // автоматическое закрытие через 5 секунд
progressBar: true
}).show();
// Прекращение автоматического закрытия через 2 секунды
setTimeout(() => {
notification.stop();
}, 2000);
В данном примере уведомление изначально будет закрыто через 5 секунд.
Вызов stop() через 2 секунды отменяет этот таймер, оставляя
уведомление видимым до явного закрытия.
Метод stop() часто используется вместе с
setTimeout, close() или динамическим
обновлением текста уведомления. Примеры комбинаций:
let noty = new Noty({
text: 'Обработка...',
type: 'info',
timeout: 4000
}).show();
noty.stop();
noty.setText('Обработка завершена');
noty.setType('success');
let noty = new Noty({
text: 'Ожидание пользователя...',
type: 'warning',
timeout: 3000
}).show();
noty.stop();
document.querySelector('#closeButton').addEventListener('click', () => {
noty.close();
});
В этом примере уведомление останется на экране до тех пор, пока пользователь не нажмёт кнопку.
stop() не отменяет уже начавшуюся анимацию
закрытия. Если уведомление начало скрываться, вызов stop()
не сможет вернуть его на экран.timeout: false) метод используется
преимущественно для единообразия кода при динамическом управлении
жизненным циклом.noty.stop().setText('Новый текст').show();
stop() при асинхронных операциях, чтобы
уведомление оставалось видимым до завершения задачи (например, загрузка
файлов, запросы к серверу).setText() для отображения прогресса
выполнения операции.stop() без необходимости, чтобы
избежать “зависших” уведомлений, которые пользователи должны закрывать
вручную.Метод stop() является ключевым инструментом для тонкой
настройки поведения уведомлений в Noty, предоставляя полный контроль над
их временем отображения и обеспечивая динамическое взаимодействие с
пользователем.