У меня есть модуль timer.js. У него есть метод start, который каждую секунду через setInterval вызывает метод update инкрементирующий переменную seconds.
Почему в коде ниже в консоли выводится 0 а не 3? Как правильно шарить переменную в es6 модуле?
import timer from './modules/timer'
timer.start();
setTimeout(function(){
console.log(timer.seconds);
}, 3000);
timer.js
let timer = null;
let seconds = 0;
function start() {
timer = setInterval(update, 1000);
}
function stop() {
clearTimeout(timer);
}
function update() {
seconds++;
}
export default {seconds, start, stop};
Для сборки я использую laravel-mix - это обертка над webpack для laravel. Не знаю важно ли это.