перепробовал уже все методы, не могу остановить таймер на сервере nodejs. Пробовал разные варианты и с setInterval и setTimeout. Получаю всегда дальше работающий таймер.
function myTimer(room,step){
holand.get(room, function(err, reply) {
console.log(reply);
var newcena = reply - step;
console.log('New price '+newcena);
holand.set(room, newcena);
socket.emit('iscena', newcena.toFixed(2));
});
}
var timerId;
console.log('1 '+timerId);
socket.on('howcena', function(data){
var room = data.room;
var step = data.step;
console.log(room);
console.log(step);
timerId = setTimeout(function tick() {
myTimer(room,step);
timerId = setTimeout(tick, 5000);
}, 5000);
console.log('2 '+timerId);
});
socket.on('stopcena',function(data){
clearTimeout(timerId);
console.log('3 '+timerId);
console.log('Stop timer');
});
var timerId;
function myTimer(room,step){
holand.get(room, function(err, reply) {
console.log(reply);
var newcena = reply - step;
console.log('New price '+newcena);
holand.set(room, newcena);
socket.emit('iscena', newcena.toFixed(2));
});
}
function tick() {
myTimer(room,step);
if (timerId) {
timerId = setTimeout(tick, 5000);
}
}
console.log('1 '+timerId);
socket.on('howcena', ({ room, step }) => {
console.log(room);
console.log(step);
timerId = setTimeout(tick, 5000);
console.log('2 '+timerId);
});
socket.on('stopcena', () => {
clearTimeout(timerId);
timerId = null;
console.log('3 '+timerId);
console.log('Stop timer');
});
Проблема в том что clearTimeout
остановит таймер только после последнего выполнения функции, в которой нет никакого условия преграждающего запуск следующего таймера. Решение ― написать какое-то условие чтобы не запускать таймер.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Нужно написать скрипт, который при открытии страницы нажимает на тизер с рекламойСкелет:
Нашел в интернете как сделать модальное окноКод рабочий, но только есть один нюанс, модальное окно срабатывает когда пользователь заходит...
Подскажите пжл алгоритм увеличение картинки к точке, в зависимости от курсора мыши над этой картинкойНе могу понять как вычислить дельту...
Есть массив данных в котором может находиться не ограниченное кол-во объектовХочу написать функцию которая будет возвращать каждые 10 элементов...