react-virtualized可视化区域渲染的使用

介绍

  1. github地址:https://github.com/bvaughn/react-virtualized 
  2. 实例网址:react-virtualized
  3. 如果体积太大,可以参考用react-window。

使用

  1. 安装: yarn add react-virtualized。
  2. 在项目入口文件index.js中导入样式文件(只导入一次就可以)
    import 'react-virtualized/styles.css';
  3. 打开文档 [ https://github.com/bvaughn/react-virtualized/blob/master/docs/List.md ],找到list的配置,找到示例,拷贝示例。
  4. 复制进你的项目
    import { List } from 'react-virtualized';const list = Array(100).fill("react-virtualized");function rowRenderer({key, // Unique key within array of rowsindex, // Index of row within collectionstyle, // Style object to be applied to row (to position it)isScrolling,isVisible,
    }: any) {return (<div key={key} style={style}>{list[index]}</div>);
    }export default function index() {return (<Listwidth={300}height={300}rowCount={list.length}rowHeight={20}rowRenderer={rowRenderer}/>)
    }
    

  5. 其中 rowRenderer 表示渲染函数的内容, isScrolling表示是否在滚动中,isVisible是否可见,!!!style样式属性,这个很重要,一定要加,作用是指定每一行的位置。
     

扩展

让list组件占满整个屏幕(AutoSize)

  1.  打开文档: https://github.com/bvaughn/react-virtualized/blob/master/docs/AutoSizer.md
  2.  添加AutoSize组件,通过render-props模式,获取到AutoSizer组件暴露的width和height属性。
  3. 设置list组件的width和height属性。
  4. 需要设置城市选择页面的根元素高度为100%,让list组件占满整个页面。
    import { List, AutoSizer } from 'react-virtualized';const list = Array(100).fill("react-virtualized");function rowRenderer({key, // Unique key within array of rowsindex, // Index of row within collectionstyle, // Style object to be applied to row (to position it)
    }: any) {return (<div key={key} style={style}>{list[index]}</div>);
    }const styles = {height: "100vh",width: "100vw"
    }export default function index() {return (<div style={styles}><AutoSizer>{({ height, width }) => (<Listheight={height}rowCount={list.length}rowHeight={20}rowRenderer={rowRenderer}width={width}/>)}</AutoSizer>,</div>)
    }
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/60815.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

进阶:Docker容器管理工具——Docker-Compose使用

文章目录 前言Compose大杀器编排服务 1、docker-compose安装curl方式安装增加可执行权限查看版本 2、Docker-compose.yaml命令3、 docker-compose实战4、Docker网络路由docker的跨主机网络路由**问题由来**:方案两台机分别配置路由表ip_forward配置 总结 前言 容器的管理工具&…

惊讶,日本用“Excel”作画,中国却用“Excel”造“另类”软件

精益求精 表格是一项伟大的创造&#xff0c;它的出现改变了人类记录、分析和展示数据的方式。 随着科技的日益月异的更新&#xff0c;从最早的纸质表格到现代化的电子表格&#xff0c;人类对表格的改造也在不断的升级和进步。 最初的纸质表格的简单记录&#xff0c;无法进行复…

机器人CPP编程基础-03变量类型Variables Types

机器人CPP编程基础-02变量Variables 全文AI生成。 C #include<iostream>using namespace std;main() {int a10,b35; // 4 bytescout<<"Value of a : "<<a<<" Address of a : "<<&a <<endl;cout<<"Val…

数据结构——双向链表

双向链表实质上是在单向链表的基础上加上了一个指针指向后面地址 单向链表请参考http://t.csdn.cn/3Gxk9 物理结构 首先我们看一下两种链表的物理结构 我们可以看到&#xff1a;双向在单向基础上加入了一个指向上一个地址的指针&#xff0c;如此操作我们便可以向数组一样操作…

六、web应用程序技术——编码

文章目录 一、状态与会话二、编码方案2.1 URL编码2.2 Unicode编码2.3 HTML编码2.4 Base64编码2.5 十六进制编码 一、状态与会话 web应用程序服务器和客户端组件除了以各种方式进行数据交换和处理&#xff0c;应用程序还需要追踪每位用户通过不同的请求与应用程序交互的状态。例…

PHP codeigniter4 搭配Nginx

> 主要是为了用Nginx运行PHP环境 1. Nginx 官方文档的配置 default.conf This configuration enables URLs without “index.php” in them and using CodeIgniter’s “404 - File Not Found” for URLs ending with “.php”. server {listen 80;listen [::]:80;se…

vuejs 设计与实现 - 简单diff算法

DOM 复用与key的作用&#xff1a; DOM 复用什么时候可复用&#xff1f; key 属性就像虚拟节点的“身份证”号&#xff0c;只要两个虚拟节点的 type属性值和 key 属性值都相同&#xff0c;那么我们就认为它们是相同的&#xff0c;即可以进行 DOM 的复用。即 我们通过【移动】来…

【C++】C语言基础部分知识点总结 (指针,函数,内存,关键字,预处理等)(秋招篇)

文章目录 前言讲一下32位系统常用数据类型的字节大小&#xff08;stm32f103为例&#xff09;讲一些C/C中常见的库什么是易变变量&#xff1f;代码的转化和构建通常会经历哪几个步骤&#xff1a;&#xff08;预处理&#xff0c;编译&#xff0c;汇编&#xff0c;链接&#xff09…

matplotlib FormatStrFormatter设置坐标轴的标注为整数和小数【设置小数点的数目】

利用FormatStrFormatter 进行设置 1 设置为整数 import matplotlib.pyplot as plt from matplotlib.ticker import FormatStrFormatter# 创建一个图表 fig, ax plt.subplots()# 生成一些示例数据 x [1, 2, 3, 4, 5] y [1000, 2000, 3000, 4000, 5000]# 在 x 轴上设置刻度标…

HTML,url,unicode编码

目录标题 HTML实体编码urlcode编码unicode编码小结基础例题高级例题 HTML实体编码 实体表示&#xff1a; 以&符号开始&#xff0c;后面跟着一个预定义的实体的名称&#xff0c;或是一个#符号以及字符的十进制数字。 例&#xff1a; <p>hello</p> <!-- 等同…

LeetCode 热题 100 JavaScript--142. 环形链表 II

给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数…

Linux(进程间通信详解)

进程间通信&#xff0c;顾名思义&#xff0c;就是进程与进程之间互通信交流&#xff0c;OS保证了各进程之间相互独立&#xff0c;但这不意味着进程与进程之间就互相隔离开&#xff0c;在不少的情况下&#xff0c;进程之间需要相互配合共同完成某项6任务&#xff0c;这就要求各进…