npm 包 @mirzadipradhana/react-data-grid 使用教程

阅读时长 9 分钟读完

简介

@mirzadipradhana/react-data-grid 是一款基于 React 的开源数据表格组件库。它支持实时排序、筛选、选中、调整列宽、分页等丰富的功能。使用该组件库可以快速构建出美观、高效的数据表格。

安装

使用 npm 安装 @mirzadipradhana/react-data-grid:

或使用 Yarn 安装:

使用

基本使用

使用 @mirzadipradhana/react-data-grid 需要引入 Grid、Column、Row 等多个组件,可以使用 import 引入:

然后在 render 函数中使用:

数据源

@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

纠错
反馈