Я пытаюсь вызвать setState
внутри функции внутри функции.
Вот моя функция.
//iohook Idle Functions.
setIdleTimeout = (millis) => {
var timeout = 0;
//Adding iohook Event Listners.
ioHook.start();
ioHook.on('mouseclick', onActivity);
ioHook.on('keypress', onActivity);
ioHook.on('mousewheel', onActivity);
ioHook.on('mousemove', onActivity);
startTimer();
function startTimer() {
timeout = setTimeout(onExpires, millis);
}
function onExpires() {
timeout = 0;
alert("User Idle. Click 'OK' to dismiss this window and restart task timer.");
this.setState({ isTimerRunning: false }); // <--- Here
}
function onActivity(event) {
if (timeout) clearTimeout(timeout);
else {
console.log('Welcome Back.');
}
startTimer();
}
};
И я вызываю setIdleTimeout(5000)
функцию вне этой функции.
Но я получаю эту ошибку.
Uncaught TypeError: this.setState is not a function at onExpires
Я пытался изменить каждую функцию на функцию стрелки без посторонней помощи.
Можете ли вы, ребята, помочь мне разобраться с этим?
Спасибо,