@historydev
Редактирую файлы с непонятными расширениями

Как исправить violetion took 200ms при скролле блока с подгрузкой сообщений?

Здравствуйте. Подгружаю сообщения по 20 штук, обновляю стейт при достижении 0 по скроллу и кручу блок на 20 сообщений назад. Но спутся несколько прокруток страница зависает и я получаю предупреждение в консоли:
[Violation] 'message' handler took 187ms


Я попробовал e.preventDefault() - не сработало, e.stopPropagation() - аналогично.
Скажите пожалуйста что я сделал не так?

onScroll={(e) => {
                    if(e.target.scrollTop < 1) {
                        const msgID = prevMessages.length ? parseInt(prevMessages[0].id) : parseInt(messages[0].id);
                        console.log(msgID);
                        socket.emit('getPrevMessages', {roomId, msgID});
                        e.target.scrollTo(0, e.target.querySelector('.direct-chat-msg:nth-child(20)').offsetTop);
                        e.stopPropagation();
                    }
                }}


Спасибо.
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
27 нояб. 2024, в 13:07
10000 руб./за проект
27 нояб. 2024, в 12:53
70000 руб./за проект
27 нояб. 2024, в 12:50
25000 руб./за проект