Задать вопрос
iSeb
@iSeb
потребитель услуг IT

Триггеры как исключить повторное выполнение функции до момента ее завершения?

Например срабатывает триггер запускается функция, допустим функция будет выполнять какие то
сложные расчеты 1-2 сек, пользователь успевает до окончания работы вызвавшейся функции еще раз вызвать эту же функцию.

Есть ли решение по сценарию если триггер вызвал функцию то в начале функции СТОП триггеру выполняем функцию и в конце функции ВКЛЮЧАЕМ триггер ?

Проще говоря как не допустить вызов функции от триггера повторно пока она не закончила свои действия ?
  • Вопрос задан
  • 215 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
rpsv
@rpsv
нормально делай, нормально будет
Использовать блокировку: гарантируется запуск только 1 раз на момент блокировки:
var blocked = false;
var action = function() {
   if (blocked === true) {
      return;
   }
   blocked = true;
   // выполнение
   blocked = false;
}
action();
action();
action();
action();
action();
action();
action();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы