UNPKG

@douyinfe/semi-ui

Version:

A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.

36 lines (35 loc) 1.27 kB
import React from 'react'; import PropTypes from 'prop-types'; export interface ReactIntersectionObserverProps { onIntersect?: IntersectionObserverCallback; option?: IntersectionObserverInit; children?: React.ReactNode; root?: IntersectionObserverInit['root']; threshold?: IntersectionObserverInit['threshold']; rootMargin?: IntersectionObserverInit['rootMargin']; items?: Record<string, Element>; } export default class ReactIntersectionObserver extends React.PureComponent<ReactIntersectionObserverProps> { static propTypes: { onIntersect: PropTypes.Requireable<(...args: any[]) => any>; option: PropTypes.Requireable<object>; root: PropTypes.Requireable<any>; threshold: PropTypes.Requireable<number>; rootMargin: PropTypes.Requireable<string>; items: PropTypes.Requireable<object>; }; static defaultProps: { onIntersect: () => void; threshold: number; rootMargin: string; option: {}; items: {}; }; observer: IntersectionObserver; cachedKeys: Array<string>; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; observeElement(force?: boolean): void; render(): React.ReactNode; }