All Projects → avin → react-vt-table

avin / react-vt-table

Licence: other
Table realisation based on `react-window` library

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to react-vt-table

Table Dragger
Turn your old table to drag-and-drop table with columns and rows sorting like magic!
Stars: ✭ 704 (+2414.29%)
Mutual labels:  table, sortable
react-cool-virtual
😎 ♻️ A tiny React hook for rendering large datasets like a breeze.
Stars: ✭ 1,031 (+3582.14%)
Mutual labels:  table, virtualized
Reactables
GigaTables is a ReactJS plug-in to help web-developers process table-data in applications and CMS, CRM, ERP or similar systems.
Stars: ✭ 112 (+300%)
Mutual labels:  table, sortable
tablex
virtualized and extendable tables and datagrids for React
Stars: ✭ 39 (+39.29%)
Mutual labels:  table, virtualized
react-table
simple react sortable searchable table
Stars: ✭ 16 (-42.86%)
Mutual labels:  table, sortable
react-crud-table
A table that includes all the CRUD operations.
Stars: ✭ 34 (+21.43%)
Mutual labels:  table, sortable
react-table-library
🍱 React Table Library
Stars: ✭ 135 (+382.14%)
Mutual labels:  table
ember-sort-filter-table
A sortable/searchable table addon for ember cli
Stars: ✭ 13 (-53.57%)
Mutual labels:  table
RKPieChart
Pie Chart written in Swift 3
Stars: ✭ 67 (+139.29%)
Mutual labels:  table
jui-grid
JUI grid can handle millions of data, and can display the data in a hierarchical structure.
Stars: ✭ 12 (-57.14%)
Mutual labels:  table
ng-mazdik
Angular UI component library
Stars: ✭ 86 (+207.14%)
Mutual labels:  table
cyksuid
Fast Python implementation of KSUID (K-Sortable Globally Unique IDs) using Cython
Stars: ✭ 29 (+3.57%)
Mutual labels:  sortable
autumn
采用Spring、Spring Boot、Redis、MyBatis、Shiro、Druid框架开发,搭载mysql数据。 如果你厌烦了MyBatis中需要手动创建表的事情,这个项目非常适合你,自动为你生成表。 从此你不在需要导入sql文件了,项目初始化变得异常简单,结构清晰,易于开发,真正拿来可用。 全注解MyBatis开发,没有任何mapper文件,一切sql 映射都用代码实现,全程无xml配置,对xml编写mapper有恐惧症的人的福音。 提供双向生成功能: 实体类自动生成数据库表,全过程不需要任何SQL语句,所有表自动生成 通过表生成基础结构代码,生成代码中已包含CRUD功能,表级别的API接口全部都有 基本实例数据全自动通过代码初始化,无需干预 仅仅只需要修改数据库连接地址,…
Stars: ✭ 28 (+0%)
Mutual labels:  table
gridjs-vue
A Vue.js wrapper component for Grid.js
Stars: ✭ 72 (+157.14%)
Mutual labels:  table
sid
Generate Sortable Identifiers
Stars: ✭ 26 (-7.14%)
Mutual labels:  sortable
android-tableview-kotlin
Android's missing TableView component.
Stars: ✭ 40 (+42.86%)
Mutual labels:  table
react-native-reseau
[WIP] An ios-like grid view based on react-native.
Stars: ✭ 13 (-53.57%)
Mutual labels:  sortable
recycler-adapter
RecyclerView-driven declarative UIs
Stars: ✭ 124 (+342.86%)
Mutual labels:  table
tabullet
Simple jQuery plugins for creating a table that can insert, edit, and delete row in one place.
Stars: ✭ 13 (-53.57%)
Mutual labels:  table
react-strap-table
react table (client and server-side) based on bootstrap.
Stars: ✭ 28 (+0%)
Mutual labels:  table

React-VT-Table

Table realisation based on react-window library.

Features

  • Efficiently rendering large tables.
  • Allow custom renderers for row, cell, and header.
  • Built-in resize columns.
  • Built-in auto-scrolling.
  • Easy to add your own sorting and selecting mechanisms (see examples).
  • Works with Immutable.Iterable data lists or native arrays of objects.

Installation

npm install react-vt-table

Demo

Here are some live examples.

Examples

Check out ./src/stories folder to find some code examples.

Styling

You can use built-in CSS style:

import 'react-vt-table/dist/style.css';

or create your own using existing one

API

<Table />

Props

Property Type Required? Description
width Number Table width.
height Number Table height.
headerHeight Number or Func Table header height (Default: 30).
rowHeight Number or Func Table row height (Default: 30).
Function params: (rowIndex).
data Immutable.Iterable Data list for table content.
rowClassName Func Row className determine function.
Function params: (rowIndex).
rowRenderer Func Personal row renderer function.
Function params: see <Row /> props.
sortIndicatorRenderer Func Sort indicator render function.
Function params: ({ dataKey, columnIndex }).
onHeaderClick Func Click Mouse action on header row.
Function params: (event, { dataKey, columnIndex }).
onHeaderDoubleClick Func Double Click Mouse action on header row.
Function params: (event, { dataKey, columnIndex }).
onHeaderMouseOver Func Mouse Over action on header row.
Function params: (event, { dataKey, columnIndex }).
onHeaderMouseOut Func Mouse Out action on header row.
Function params: (event, { dataKey, columnIndex }).
onHeaderRightClick Func Right Click Mouse action on header row.
Function params: (event, { dataKey, columnIndex }).
onRowClick Func Click Mouse action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowDoubleClick Func Double Click Mouse action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowMouseOver Func Mouse Over action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowMouseOut Func Mouse Out action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowMouseDown Func Mouse Down action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowMouseUp Func Mouse Up action on table row.
Function params: (event, { dataKey, columnIndex }).
onRowRightClick Func Right Click Mouse action on table row.
Function params: (event, { dataKey, columnIndex }).
onScroll Func Action on table scroll.
Function params: See React-Window's docs.
onResizeColumn Func Action on change column width.
Function params: ({ dataKey, columnIndex, resizeDiff, newWidth }).
overflowWidth Number Width of vertical table overflow.
minColumnWidth Number Minimal column width.
maxColumnWidth Number Maximum column width.
dynamicColumnWidth Bool Dynamic width for columns that was not resized.
listProps Object Props for inner react-window list component. @see See React-Windows docs
noItemsLabel Node No items in data list label.
disableHeader Bool Hide table header row.
autoScroll Bool Auto scroll to list bottom.
className String Optional custom CSS class name to attach to root container element.
id String Optional custom id to attach to root container element.

Methods

scrollTo(scrollOffset: number): void

scrollToItem(index: number, align: string = "auto"): void

For more info see React-Window's docs

<Column />

Props

Property Type Required? Description
cellRenderer Func Content cell render function.
Function params: ({ dataKey, rowData, columnIndex }).
columnHeaderCellRenderer Func Column header cell render function.
Function params: ({ label, dataKey, columnIndex }).
dataKey String Field key containing data.
width Number Default column width in pixels.

<Row />

Use Row component only if you want to low modify your table rows. (See example ./srs/stories/rowRenderer.js)

Props

Property Type Required? Description
index Number Row number
style Object Row style
data Object Additional row data ({dataList, rowProps}) where dataList is table data and rowProps is additional row properties (see below)

Additional row properties

Additional row properties are contained in row's props.data.rowProps

Property Type Required? Description
columns array Table columns array
rowClassName Func Row className determine function.
Function params: (rowIndex).
getRowWidth Func Get row actual width.
getDataRowItem Func Function to get cell value.
Function params: ({rowData, dataKey}).
getColumnWidth Func Function to get column width.
Function params: (columnIndex).
getDataRow Func Function to get row data item.
Function params: (rowIndex).
onClick Func onClick row handler.
Function params: (event, { dataKey, columnIndex }).
onDoubleClick Func onDoubleClick row handler.
Function params: (event, { dataKey, columnIndex }).
onMouseOver Func onMouseOver row handler.
Function params: (event, { dataKey, columnIndex }).
onMouseOut Func onMouseOut row handler.
Function params: (event, { dataKey, columnIndex }).
onRightClick Func onRightClick row handler.
Function params: (event, { dataKey, columnIndex }).

License

MIT © avin

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].