简介
@mirzadipradhana/react-data-grid 是一款基于 React 的开源数据表格组件库。它支持实时排序、筛选、选中、调整列宽、分页等丰富的功能。使用该组件库可以快速构建出美观、高效的数据表格。
安装
使用 npm 安装 @mirzadipradhana/react-data-grid:
npm install @mirzadipradhana/react-data-grid
或使用 Yarn 安装:
yarn add @mirzadipradhana/react-data-grid
使用
基本使用
使用 @mirzadipradhana/react-data-grid 需要引入 Grid、Column、Row 等多个组件,可以使用 import 引入:
import { Grid, Column, Row } from "@mirzadipradhana/react-data-grid";
然后在 render 函数中使用:
<Grid columns={[<Column key="id" name="ID" width={100} />, <Column key="name" name="Name" width={200} />]} rows={[<Row key="1" id={1} name="Alice" />, <Row key="2" id={2} name="Bob" />]} />
数据源
@mirzadipradhana/react-data-grid 支持多种数据源的使用方式:
- 以 props 形式传入;
- 使用 dataSource 和 columns 属性;
- 使用 getRowAt、getRowSize、getRowsCount 方法;
- 使用 ES6 Proxy 对象。
props
columns
:表格的列数组,元素为<Column>
组件;rows
:表格的行数组,元素为<Row>
组件;headerRowHeight
:表头行高,默认 35;rowHeight
:表格行高度,默认 35;minHeight
:表格最小高度,默认 350;defaultColumnWidth
:默认列宽,默认 120;defaultColumnDef
:默认列属性,可以精确控制每一个列组件的 props;rowRenderer
:行渲染器;onSelectedRowsChange
:选中行变化的回调函数;onSort
:排序的回调函数;onFilter
:筛选的回调函数。
列组件 <column>
Prop 名称 | 值类型 | 默认值 | 描述 |
---|---|---|---|
key |
string | 必填 | 列的唯一键 |
name |
string | 必填 | 列的名称 |
width |
number | 必填 | 列的宽度 |
sortable |
boolean | true | 是否支持排序 |
filterable |
boolean | true | 是否支持筛选 |
resizable |
boolean | true | 是否支持调整列宽 |
headerCellRenderer |
ReactElement | undefined | 自定义表头单元格渲染器,支持插入 JSX 元素等 |
cellRenderer |
ReactElement | undefined | 自定义单元格渲染器,支持插入 JSX 元素等 |
行组件 <row>
Prop 名称 | 值类型 | 默认值 | 描述 |
---|---|---|---|
key |
string | 必填 | 行的唯一键 |
...props | 原生 DOM 属性 | - | 行的其他属性,如 id、className 等 |
更多配置项请查看官方文档。
数据源使用示例
以 props 形式传入
-- -------------------- ---- ------- ------ - ----- ------- --- - ---- ---------------------------------- ----- ------- - - ------- -------- --------- ----------- --- ------- ---------- ----------- ----------- -- - ----- ---- - - ---- ------- ------ ------------ --- ---- ------- ------ ---------- --- ---- ------- ------ -------------- --- ---- ------- ------ ------------ --- ---- ------- ------ ---------- -- - -------- ----- - ------ ----- ----------------- ----------- -- - ------ ------- ---
使用 dataSource 和 columns 属性
-- -------------------- ---- ------- ------ - ----- ------ - ---- ---------------------------------- ----- ---------- - - - --- -- ----- ------- -- - --- -- ----- ----- -- - --- -- ----- --------- -- - --- -- ----- ------- -- - --- -- ----- ----- - - ----- ------- - - ------- -------- --------- ----------- --- ------- ---------- ----------- ----------- -- - -------- ----- - ------ ----- ----------------------- ----------------- -- - ------ ------- ---
使用 getRowAt、getRowSize、getRowsCount 方法
-- -------------------- ---- ------- ------ - ----- ------ - ---- ---------------------------------- -------- ----- - ----- -------- - ------- -- ----------------- ----- ---------- - -- -- -- ----- ------------ - -- -- ----------------- ----- ------- - - ------- -------- --------- ----------- --- ------- ---------- ----------- ----------- -- - ------ - ----- ------------------- ----------------------- --------------------------- ----------------- -- - - ------ ------- ---
使用 ES6 Proxy 对象
-- -------------------- ---- ------- ------ - ----- ------ - ---- ---------------------------------- -------- ----- - ----- ---------- - - - --- -- ----- ------- -- - --- -- ----- ----- -- - --- -- ----- --------- -- - --- -- ----- ------- -- - --- -- ----- ----- - - ----- ------- - - ------- -------- --------- ----------- --- ------- ---------- ----------- ----------- -- - ----- ----- - --- ----------------- - ----------- ----- - -- ----- --- --------- - ------ ------------------- ----- - ----- ----- - ------------ ------ ------------- - ------------- - - --- ----- - -- ----- -- - - -- ------ ----- ------------------ ----------------- -- - ------ ------- ---
小结
@mirzadipradhana/react-data-grid 是一款开源的 React 数据表格组件库,支持多种数据源的使用方式,提供了丰富的配置项,使用简单方便。
以上是 npm 包 @mirzadipradhana/react-data-grid 的使用教程,希望能够帮助到前端开发者快速掌握这款组件库的使用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066bcc967216659e244782