A react component for building really responsive table. The built tables can be used for form (hell yeah!) and can wrap to multiples lines on small devices.
Inspiration : https://hashnode.com/post/really-responsive-tables-using-css3-flexbox-cijzbxd8n00pwvm53sl4l42cx
npm i react-responsive-table --saveYou will need also react (of course) and react-style-proptype (used to validate the style properties).
npm i react, react-style-proptype, react-responsive-table --saveOnce installed, just require and use the components:
import React from `react`;
import { Table, Row, Cell } from 'react-responsive-table';
React.render(<Table>
<Row>
<Cell thead minWidthPx={100}>Head-1-1</Cell>
<Cell thead minWidthPx={100}>Head-1-2</Cell>
</Row>
<Row>
<Cell minWidthPx={100}>Col-1-1</Cell>
<Cell minWidthPx={100}>Long text for Col-1-2</Cell>
</Row>
<Row>
<Cell minWidthPx={100}>Col-2-1</Cell>
<Cell minWidthPx={100}>Col-2-2</Cell>
</Row>
<Row>
<Cell minWidthPx={100}>Long text for Col-3-1</Cell>
<Cell minWidthPx={100}>Col-3-2</Cell>
</Row>
</Table>, document.querySelector('#main'));| Props | Options | Default | Description |
|---|---|---|---|
| material | Boolean | false | if true, it apply material-ui styles to the table |
| Props | Options | Default | Description |
|---|---|---|---|
| striped | Boolean | false | if true, it strip the color of the row acording to the pair/impair index |
| index | Number | null | The row index (used by the striped fonctionality). It is supposed to be set automatically by the Table parent but, with redux-connect or other middle component you may have to set it manually. |
| material | Boolean | false | if true, it apply material-ui styles to the table. It is supposed to be set automatically by the Table parent but, with redux-connect or other middle component you may have to set it manually. |
| Props | Options | Default | Description |
|---|---|---|---|
| header | Boolean | false | if true, it apply a table header style to this cell |
| minWidthPx | Number | null | The minimum with in px of the Cell |
| material | Boolean | false | if true, it apply material-ui styles to the table. It is supposed to be set automatically by the Table parent but, with redux-connect or other middle component you may have to set it manually. |
This lib is designed to integrate with material-ui. It uses natively the selected theme for every supported functionalities.
npm run buildnpm testNOTE: The source code for the component is in src. A transpiled CommonJS version (generated with Babel) is available in lib for use with node.js, browserify and webpack. A UMD bundle is also built to dist, which can be included without the need for any build system.
To build, watch and serve the examples (which will also watch the component source), run npm start.
Examples are available here : https://jtassin.github.io/react-responsive-table/
| Julien TASSIN |
MIT, see LICENSE for details.
