久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

IntersectionObserver實(shí)現(xiàn)加載更多組件demo

瀏覽:5日期:2022-06-13 08:54:45
實(shí)例import { useEffect, useRef } from 'react';import { Spin } from 'antd';import type { FsFC } from './types';import './index.less';type LoadMoreProps = { root?: Element | null; // 跟哪個(gè)元素重疊不傳默認(rèn)則是 整個(gè)瀏覽器窗口,一般是父元素 isLoading: boolean; // 用來(lái)判斷如果 沒(méi)有在請(qǐng)求列表才回執(zhí)行 more: () => void;};const LoadMore: FsFC<LoadMoreProps> = ({ root = null, isLoading, more }) => { const loadMoreRef = useRef(null); /** 建立加載更多觀察者 */ const loadMoreOb = () => { if (!loadMoreRef.current) { return; } const ob = new IntersectionObserver( (entries) => {const [entry] = entries;// 有重疊,并且沒(méi)有在請(qǐng)求if (entry.isIntersecting && !isLoading) { more();} }, {root,threshold: 1, }, ); ob.observe(loadMoreRef.current); }; useEffect(() => { loadMoreOb(); }, []); return ( <div className='load-more' ref={loadMoreRef}> <Spin /> </div> );};export default LoadMore;

文中注釋已對(duì)代碼進(jìn)行詳解說(shuō)明,以上就是IntersectionObserver實(shí)現(xiàn)加載更多組件demo的詳細(xì)內(nèi)容,更多關(guān)于IntersectionObserver加載組件的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: JavaScript
主站蜘蛛池模板: 东阿县| 平湖市| 南和县| 洮南市| 齐河县| 扶沟县| 大邑县| 山东省| 古田县| 磴口县| 体育| 梧州市| 凤台县| 灵武市| 广水市| 黄浦区| 太仆寺旗| 鲁甸县| 射阳县| 武宣县| 彩票| 宁波市| 成都市| 图木舒克市| 绿春县| 军事| 丰镇市| 凌源市| 灵石县| 肥西县| 永丰县| 宜章县| 那坡县| 都江堰市| 都安| 广州市| 汤原县| 大化| 元谋县| 康平县| 邯郸市|