虚拟滚动库react-window (react实现)

介绍:

用于呈现大量的列表和表格数据,可在给定的时间内渲染有限的内容,既降低重新渲染组件所消耗的时间,也能减少DOM节点的数量

react-window的api

安装:

npm i react-window

运用:

1.列表

重点:必须有 style={index.style}

如果没有这句会造成:

  •  滚动加载出空白列表
  • 会出现不停渲染

 代码如下:

import { FixedSizeList, areEqual } from 'react-window';

.......
 renderdata = (index, isScrolling) => {
        console.log(index) 
//{data: Array(80), index: 0, isScrolling: undefined, style: {…}}

        console.log(index.style)
//{position: 'absolute', left: 0, right: undefined, top: 0, height: 200, …}
      

   var item = index.data[index.index]
        return (

            <div   style={index.style} >
               {item.CORDER_NO}
            </div>
        )
    }


    render() {
      
        return (
            <div>
 
               //虚拟化加载
                            <FixedSizeList
                               className={styles.List}
                                height={1000}
                                width={"100%"}
                                itemCount={data.length} //显示条数
                                itemSize={200}//单行高度
                                itemData={data}
                            >
                                {this.renderdata}
                            </FixedSizeList>

                          
            </div>


        )
    }
}

2.表格

 

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值