Вы изменили default
из options
с:
default: () => {
return {
root: null,
threshold: "0"
};
}
на:
default: () => ({
root: 0,
threshold: "0"
})
Но если мы посмотрим на lib.dom.d.ts
, вот интерфейс для Объект опций IntersectionObserver:
interface IntersectionObserverInit {
root?: Element | null;
rootMargin?: string;
threshold?: number | number[];
}
Когда root
равен null
или undefined
, IntersectionObserver
по умолчанию используется для элемента области просмотра.
Так что измените его обратно на null
, и он будет работать.