setTimeout задерживается в действиях React Redux / Redux Thunk

Пример одного из моих действий:

export function setHeights() {
  if (noDifferenceInHeights && typeRequiresSetHeights) {´
    const time1 = new Date().getTime();

    setTimeout(() => {
      const time2 = new Date().getTime();
      console.log((time2 - time1) / 1000 + " seconds delay");
      dispatch(setHeights());
    });
  } else if (typeRequiresSetHeights && document.getElementById('scroller')) {
    dispatch({
      type: 'SET_HEIGHTS',
      heights: {
        scrollHeight: document.getElementById('scroller').offsetHeight
      }
    })
  }
}

По сути, я пытаюсь перезапустить функцию, если нет различий, но должны быть различия, потому что новые высоты еще не отрисованы. Поэтому тайм-аут сделан.

Я записываю время, которое требуется каждый раз, когда запускается. В первый раз это около 0,2 секунды. Затем близко к 10 секундам. Потом 30 секунд. Затем 60 секунд.

В чем может быть причина этого странного поведения? Я искал вокруг в течение нескольких часов.

0 ответов

Другие вопросы по тегам