Skip to content
Extraits de code Groupes Projets
Valider a0502ec0 rédigé par Mohsine's avatar Mohsine
Parcourir les fichiers

Merge branch 'bugfix/scroll-chat' into 'develop'

fixed scrolling logic in live chat messages

See merge request !435
parents 2424438e af201cee
Branches feature/MYD-798
1 requête de fusion!435fixed scrolling logic in live chat messages
import { useRef, useEffect, useCallback, useState } from 'react';
import { useRef, useEffect, useCallback } from 'react';
export default function useScroll<T>(items: T[]) {
const endRef = useRef<HTMLDivElement>(null);
const isEndVisible = useRef(true);
const isEndVisibleRef = useRef(true);
const scrollToBottom = useCallback(() => {
if (endRef.current && isEndVisible) {
if (endRef.current && isEndVisibleRef.current) {
endRef.current.scrollIntoView({ behavior: 'smooth' });
}
}, [items, isEndVisible]);
}, []);
useEffect(() => {
scrollToBottom();
......@@ -18,7 +18,7 @@ export default function useScroll<T>(items: T[]) {
const observer = new IntersectionObserver(
(entries) => {
const [entry] = entries;
isEndVisible.current = entry.isIntersecting;
isEndVisibleRef.current = entry.isIntersecting;
},
{
root: null, // relative to the viewport
......@@ -35,7 +35,7 @@ export default function useScroll<T>(items: T[]) {
observer.unobserve(endRef.current);
}
};
}, [endRef]);
}, []);
return {
endRef,
......
0% ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter