监听 react-custom-scrollbars 滚动到底部

简介: 监听 react-custom-scrollbars 滚动到底部

功能:下拉到底部加载数据

import React, {
    useEffect, useRef, useState } from 'react';
import {
    Scrollbars } from 'react-custom-scrollbars';

const Index = () => {
   
    const scrollbarsRef = useRef(null);
    // 模拟数据
    const [dataList, setDataList] = useState<string[]>([]);

    useEffect(() => {
   
        if(dataList.length === 0){
   
            let arr = [];
            for (let index = 0; index < 100; index++) {
   
                arr.push('测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试')
            };
            setDataList([...arr]);
        };
    },[]);

    /**
     * 滚动事件 监听滚动
     */
    const handleScroll = () => {
   
        const {
    scrollTop, scrollHeight, clientHeight } = scrollbarsRef.current.getValues();
        if (scrollHeight - scrollTop === clientHeight) {
   
            console.log("已滚动到底部");
        }
    };

    return (
        <div>
            <Scrollbars onScroll={
   handleScroll} autoHeightMin={
   '186px'} autoHide autoHeight ref={
   scrollbarsRef}>
                {
   
                    dataList.map((item: string, index: number) => {
   
                        return (
                            <div key={
   index}>{
   index}:{
   item}</div>
                        )
                    })
                } 
            </Scrollbars>
        </div>
    );
}

export default Index;
相关文章
|
前端开发 JavaScript API
【React工作记录九十九】ant design mobile实现tab滚动效果和闪屏小记
【React工作记录九十九】ant design mobile实现tab滚动效果和闪屏小记
203 0
|
前端开发
React滚动页面触发相应位置动画
滚动过的距离+当前窗口的高度>元素到顶部窗口的距离 ===>则触发动画
|
Android开发 iOS开发
react-native如何让两个滚动窗口同时滚动
react-native如何让两个滚动窗口同时滚动
|
2月前
|
前端开发 JavaScript UED
React 基础与实践 | 青训营笔记
React 基础与实践 | 青训营笔记
44 0
|
3月前
|
前端开发 JavaScript Java
React 速通笔记
【7月更文挑战第17天】
41 1
|
前端开发
前端学习笔记202305学习笔记第二十九天-React keep alive原理之2
前端学习笔记202305学习笔记第二十九天-React keep alive原理之2
72 0
|
前端开发
前端学习笔记202306学习笔记第四十八天-react-admin marmelab之8
前端学习笔记202306学习笔记第四十八天-react-admin marmelab之7
48 0
|
5月前
|
前端开发 JavaScript
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
60 1
|
11月前
|
前端开发
前端笔记:React的form表单全部置空或者某个操作框置空的做法
在React框架前端开发中,经常会有弹出框的开发,涉及到弹出框,难免就会有表单。一般在关闭弹出框或者对表单联动时,往往都需要考虑对表单进行置空操作了。
87 0
|
Web App开发 前端开发 JavaScript
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber解决了什么问题
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber解决了什么问题
67 0

热门文章

最新文章

下一篇
无影云桌面