针对大数据量的渲染优化库:react-virtual的基本使用

  • 针对大数据量的渲染优化库:react-virtual(List)的基本使用
    • react-virtual库的安装及引用
      • 安装
      • 使用

针对大数据量的渲染优化库:react-virtual(List)的基本使用

react-virtual库的安装及引用

安装

github地址:https://github.com/bvaughn/react-virtualized

使用命令:

npm install react-virtualized --save

安装过程可能会出现(react版本库以及react-virtualized库之间的存在版本冲突问题)

npm ERR! peer react@"^15.3.0 || ^16.0.0-alpha" from react-virtualized@9.22.3

则使用:

npm install react-virtualized --legacy-peer-deps

使用

// react-virtualized长列表优化
import 'react-virtualized/styles.css';
// List可用于渲染列表内需要重复渲染的节点,
import List from 'react-virtualized/dist/commonjs/List';
// AutoSizer库可以以用于自动获取子List所在父级的宽高,以回调参数的方式传递给List
import AutoSizer from 'react-virtualized/dist/commonjs/AutoSizer';export default class index extends Component {constructor(props: any) {super(props);this.state = {// 生成长度为1000的随机数组list: new Array(1000).fill(Math.rendom(0, 1)* 100.toFixed(0))}this.rowRenderer = this.rowRenderer.bind(this);}// rowRenderer返回需要重复进行渲染的节点rowRenderer(arg: { key: Key, index: number, isScrolling: unknown, isVisible: any, style: any }) { // 此处为ts写法,js可直接使用对象解构,在函数内使用return (<div key={arg.key} style={arg.style}> // stlye一定要用上{arg.index}{this.state.list[index]}</div>)}render() {return (<AutoSizer>{({ width, height }) => ( // 此处width,height为AutoSizer自动获取的父级高度,List可采用也可自定义给定List的高度<Listwidth={width} // 定义列表宽度height={30 * this.props.datalist.length}  // 定义列表总高度rowHeight={30}   // 定义每个item的高度rowCount={this.props.datalist.length} // 需要渲染的列表条数,同时也相当于规定了会渲染的数据条数rowRenderer={this.rowRenderer} // 需要重复渲染的节点/>)}</AutoSizer>)}
}

其他用法及细节参考:使用文档

针对大数据量的渲染优化库:react-virtual的基本使用相关推荐

  1. 任何抛开业务谈大数据量的sql优化都是瞎扯

    周三去某在线旅游公司面试.被问到了一个关于数据量大的优化问题.问题是:一个主外键关联表,主表有一百万数据,外键关联表有一千万的数据,要求做一个连接. 本人接触过单表数据量最大的就是将近两亿行历史数据( ...

  2. 大数据量表的优化查询

    1:索引,我们最先想到的就是创建索引,创建索引可以成倍的提升查询的效率,节省时间.但是如果数据量太过于巨大的时候,这个时候单纯的创建索引是无济于事的,我们知道假如特别是在大数据量中统计查询,就拿100 ...

  3. Android, BaseAdapter 处理大数据量时的优化

    Android优化 最常见的就是ListView, Gallery, GridView, ViewPager 的大数据优化  图片优化  访问网络的优化 优化的原则: 数据延迟加载  分批加载  本地 ...

  4. 一个大数据量表访问优化--联动下拉框查询优化

    问题描述有一数据表(产品标签表,每个产品一个唯一的SN,每月100万左右),查询界面上有2个联动下拉框,[规格]____,[批次]______ 用户选择一个规格后(目前200来个规格),列出该规格下达 ...

  5. vue渲染大量数据如何优化_大数据量场景下的Vue性能优化

    性能优化最常见的落脚点是在网络和dom上,但是在大数据量的场景下,由于Vue本身的特性,可能会造成js运行层面的性能问题,这篇文章讨论的就是针对这一部分的性能优化方案. 模拟一个大数据量的场景 // ...

  6. web 折线图大数据量拉取展示方案_【第2010期】QQ音乐Android客户端Web页面通用性能优化实践...

    前言 今日早读文章由QQ音乐客户端开发工程师@关岳分享,公号:云加社区(ID:QcloudCommunity,腾讯云官方开发者社区)授权分享. 正文从这开始~~ QQ音乐 Android 客户端的 W ...

  7. 大数据量数据库优化(转)

    一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的. ...

  8. 大数据量时Mysql的优化要点[转]

    转自:http://www.open-open.com/lib/view/open1430901016179.html 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各 ...

  9. 大数据量高并发访问的数据库优化方法

    一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的. ...

最新文章

  1. 除了负载均衡,Nginx 还可以做很多:限流、缓存、黑白名单等
  2. Python介绍以及Python 优缺点
  3. Centos目录及其常用处理命令
  4. 《Linux内核设计与实现》读书笔记(十一)- 定时器和时间管理
  5. 本地连接的图标要等很长时间才出来
  6. rxjs里delay operators的用法
  7. mysql更改安装路径6_关于mysql安装后更改数据库路径方法-Centos6环境
  8. 吴恩达|机器学习作业7.1.主成分分析(PCA)
  9. ArcGis拓扑——规则、概念与要点
  10. 动态规划之LCS算法
  11. B站视频直接下载成mp4格式
  12. win10系统安装和优化
  13. 笔记本计算机回收站在哪里,电脑回收站不见了怎么办 四种方法教你快速解决问题【图文教程】...
  14. 《铸梦之路》帧同步卡牌放置手游(斗罗大陆武魂觉醒、上古王冠)
  15. 拯救剧荒,程序员最爱看的高分美剧TOP10
  16. 【基础入门题026】佩尔数列Pell(n)
  17. OpenLayers 之 地图图层数据来源(ol.source)详解,ps图层混合模式详解
  18. 紫书《算法竞赛入门经典》
  19. ACM-ICPC模板整理
  20. 子查询:单行子查询,多行子查询,多列子查询

热门文章

  1. Python中常用最神秘的函数! lambda 函数深度总结!
  2. SimpleDateFormate日期字符串转换(墨雪亲测)
  3. check the manual that corresponds to your MySQL server version for the right syntax to use near
  4. 阿里云HaaS100物联网开发板学习笔记(四)轻应用初步--用javascript连接阿里云物联网平台
  5. Netty获取客户端IP
  6. 解决用联通看不了B站等问题
  7. 企业上云是什么?有什么优点
  8. 5分钟读懂UML类图
  9. linux: ubuntu 21.04 安装搜狗拼音输入法
  10. 搭建OpenStack的Message queue及出现的问题