Size: a a a

Nuxt.js — русскоговорящее сообщество

2020 November 17

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Ilya AeroWave
Имхо норм
А этож получается таймер будет менять и сам себя вызывать постоянно? Не грохнет ли проц😅
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Типо заспам рекурсивный получается, или нет?)
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
А этож получается таймер будет менять и сам себя вызывать постоянно? Не грохнет ли проц😅
Имеешь в виду, когда повторно на страницу входить будешь?
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Да не, ну вот изменилось время, вызвался опять вотчер, а время меняется в наносекундах
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Типо изменение будет за собой тянуть вычисление, как только изменится ещё одно и так по кругу
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Не затроттлится ли🤔
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
Типо изменение будет за собой тянуть вычисление, как только изменится ещё одно и так по кругу
Накидай пример, что ты хочешь сделать. Я что-то не до конца понимаю
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Да за мобилой сейчас к сожалению, а кейс такой, на сервере есть событие у него метка времени, закончится тогда то, я заходя на сайт например, получаю метку, делаю метка минус время сейчас, и эту разницу во времени отображаю в посекундном таймере
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Вот вопрос, как проще всего организовать таймер отображаемый
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
Да за мобилой сейчас к сожалению, а кейс такой, на сервере есть событие у него метка времени, закончится тогда то, я заходя на сайт например, получаю метку, делаю метка минус время сейчас, и эту разницу во времени отображаю в посекундном таймере
дойдет до нуля, очистил таймер
вышел со страницы, очистил таймер
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Ilya AeroWave
дойдет до нуля, очистил таймер
вышел со страницы, очистил таймер
Так я про реализацию) в маунтед если это вычисление сделать, не будет ли троттлинга процессора
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
Так я про реализацию) в маунтед если это вычисление сделать, не будет ли троттлинга процессора
Он выполняется один раз при инициализации компонента, не вижу проблемы
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Тьфу ты
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Заговорился, конечно не в маунтед а в компьютед
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
Заговорился, конечно не в маунтед а в компьютед
Пипец 🤣
источник

VP

Vladislav Portnoy in Nuxt.js — русскоговорящее сообщество
Roman Kolosov
Заговорился, конечно не в маунтед а в компьютед
никакого маунтед и компьютед не надо.

У тебя есть текущая дата и дата с сервера, ты просто делаешь метод в котором у тебя есть setInterval, если разница между текущей датой и датой с севера больше нуля, то ты запускаешь setInterval, внутри которого дикрементиш реактивную переменную

Перед export default:
let interval;

startCounter() {
     clearInterval(interval);
     interval = setInterval(() => {
       if (this.remainedTime === 0) {
         clearInterval(interval);
       } else {
         this.remainedTime--;
       }
     }, 1000);
   },
источник

VP

Vladislav Portnoy in Nuxt.js — русскоговорящее сообщество
startCounter вызываешь при получении значения с сервера
источник

RK

Roman Kolosov in Nuxt.js — русскоговорящее сообщество
Vladislav Portnoy
никакого маунтед и компьютед не надо.

У тебя есть текущая дата и дата с сервера, ты просто делаешь метод в котором у тебя есть setInterval, если разница между текущей датой и датой с севера больше нуля, то ты запускаешь setInterval, внутри которого дикрементиш реактивную переменную

Перед export default:
let interval;

startCounter() {
     clearInterval(interval);
     interval = setInterval(() => {
       if (this.remainedTime === 0) {
         clearInterval(interval);
       } else {
         this.remainedTime--;
       }
     }, 1000);
   },
Хм, спасибо большое чет не думал даже в эту сторону
источник

VP

Vladislav Portnoy in Nuxt.js — русскоговорящее сообщество
твой remainedTime должен быть в секундах. В общем должно получится)
источник

IA

Ilya AeroWave in Nuxt.js — русскоговорящее сообщество
Vladislav Portnoy
никакого маунтед и компьютед не надо.

У тебя есть текущая дата и дата с сервера, ты просто делаешь метод в котором у тебя есть setInterval, если разница между текущей датой и датой с севера больше нуля, то ты запускаешь setInterval, внутри которого дикрементиш реактивную переменную

Перед export default:
let interval;

startCounter() {
     clearInterval(interval);
     interval = setInterval(() => {
       if (this.remainedTime === 0) {
         clearInterval(interval);
       } else {
         this.remainedTime--;
       }
     }, 1000);
   },
Почему не в methods?
источник