В методе схемы JS требуется сделать паузу.
Какие у вас используются методы?
Я пока нашёл вот такой подход.
wait: function (ms) { var start = new Date().getTime(); var end = start; while (end < start + ms) { end = new Date().getTime(); } },
Вызов метода: this.wait(1000);
Нравится
3 комментария
28 января 2021 11:44
Дамиан, ну так точно не стоит, это ведь будет крутиться цикл всё время до нужного момента и занимать всё ядро процессора.
В JS есть готовые функции таймера, куда параметром передают обработчик. См. статью.
Пример использования:
window.setTimeout(function, 1000); function myFunction() { alert('Hello'); }
Аналогично и с регулярным запуском, вместо setTimeout написать setInterval.
А тут пример его использования в Creatio.
1 февраля 2021 09:33
Спасибо за пример. Но пока не разобрался как быть с методом с параметрами.
// Вызовы. setTimeout(this.foo1, 1000); setTimeout(this.foo2("some"), 1000); // Методы. foo1() { console.info("foo1"); // есть ожидание }, foo2(args) { console.info("foo2 with args"); // нет ожидания },
1 февраля 2021 10:04
Разобрался. Вот так будет вызов с аргументами и ожиданием.
let dt = new Date(); console.info("start: " + dt.getMinutes() + "." + dt.getSeconds() + "." + dt.getMilliseconds() + "."); setTimeout(this.foo1, 1000); setTimeout(this.foo.bind(this, "some"), 1000); foo1() { console.info("foo1"); let dt = new Date(); console.info("foo1: " + dt.getMinutes() + "." + dt.getSeconds() + "." + dt.getMilliseconds() + "."); }, foo2(args) { console.info("foo2(" + args + ")"); let dt = new Date(); console.info("foo2: " + dt.getMinutes() + "." + dt.getSeconds() + "." + dt.getMilliseconds() + "."); },
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать