material-ui-flat-pagination
v4.1.2
Published
A pagination component for Material-UI using Button component.
Downloads
7,773
Readme
material-ui-flat-pagination
A pagination component for Material-UI using Button component.
Compatibility
Supported Versions
| material-ui-flat-pagination | Material-UI | | --------------------------- | ----------- | | >=4.0.0 | >=4.0.0 | | >=3.0.0 | >=1.0.0 | | 2.x | 0.x |
Installation
npm install material-ui-flat-pagination
Demo
Demo
Example
import React from "react";
import ReactDOM from "react-dom";
import CssBaseline from "@material-ui/core/CssBaseline";
import { createMuiTheme, MuiThemeProvider } from "@material-ui/core/styles";
import Pagination from "material-ui-flat-pagination";
const theme = createMuiTheme();
class Example extends React.Component {
constructor(props) {
super(props);
this.state = { offset: 0 };
}
handleClick(offset) {
this.setState({ offset });
}
render() {
return (
<MuiThemeProvider theme={theme}>
<CssBaseline />
<Pagination
limit={10}
offset={this.state.offset}
total={100}
onClick={(e, offset) => this.handleClick(offset)}
/>
</MuiThemeProvider>
);
}
}
ReactDOM.render(<Example />, document.getElementById("root"));
Props
| Name | Type | Default | Description |
| ---- | ---- | ------- | ----------- |
| limit
* | number | | The number of rows per page. Allow a number greater than or equal to 1
. |
| offset
* | number | | The number of rows to skip. Allow a number greater than or equal to 0
. |
| total
* | number | | The total number of rows. Allow a number greater than or equal to 0
. |
| centerRipple
| bool | false | If true, the ripples of all buttons will be centered. |
| classes
| object | | Override or extend the styles applied to the component. See CSS API below for more details. |
| component
| union: string | func | object | 'div' | The component used for the root node. Either a string to use a DOM element or a component. |
| currentPageColor
| enum: 'default' | 'inherit' | 'primary' | 'secondary' | 'secondary' | The color of the current page button. |
| disabled
| bool | false | If true, all buttons will be disabled. |
| disableFocusRipple
| bool | false | If true, the keyboard focus ripple of all buttons will be disabled. |
| disableRipple
| bool | false | If true, the ripple effect of all buttons will be disabled. |
| fullWidth
| bool | false | If true, all buttons will take up the full width of its container. |
| innerButtonCount
| number | 2 | The number of displayed standard page buttons adjacent to the current button. Allow a number greater than or equal to 0
. |
| nextPageLabel
| node | '>' | The content of the next page button. |
| onClick
| func | | Callback fired when the button is clicked.Signature:function(event: object, offset: number, page: number) => void
event: The event source of the callback.offset: The number of new offset.page: The number of new page. |
| otherPageColor
| enum: 'default' | 'inherit' | 'primary' | 'secondary' | 'primary' | The color of the buttons of other pages excluding the current page. |
| outerButtonCount
| number | 2 | The number of standard page buttons displayed at the end. Allow a number greater than or equal to 1
. |
| previousPageLabel
| node | '<' | The content of the previous page button. |
| reduced
| bool | false | If true, the number of displayed buttons will be reduced. Equivalent to innerButtonCount=1
and outerButtonCount=1
. |
| renderButton
| func | | Callback fired when the button is rendered. Main use case is to use anchor for pagination: ({ page, children }) => React.cloneElement(children as React.ReactElement, { href: `?page=${page}` })
Signature:function({ offset: number, page: number, children: node}) => ReactElement
offset: The number of new offset.page: The number of new page.children: The page button component. |
| size
| enum: 'small' | 'medium' | 'large' | 'medium' | The size of all buttons. |
Any other properties supplied will be spread to the root element.
CSS API
| Name | Description |
| ---- | ----------- |
| root
| Styles applied to the root element. |
| rootCurrent
| Styles applied to the root element of the current page button. |
| rootEllipsis
| Styles applied to the root element of the ellipsis page button. |
| rootEnd
| Styles applied to the root element of the end page button. |
| rootStandard
| Styles applied to the root element of the standard page button. |
| label
| Styles applied to the span element of the page button that wraps the children. |
| text
| Styles applied to the root element of the page button. |
| textPrimary
| Styles applied to the root element of the page button if currentPageColor="primary"
or otherPageColor="primary"
. |
| textSecondary
| Styles applied to the root element of the page button if currentPageColor="secondary"
or otherPageColor="secondary"
. |
| colorInherit
| Styles applied to the root element of the page button if currentPageColor="inherit"
or otherPageColor="inherit"
. |
| colorInheritCurrent
| Styles applied to the root element of the current page button if currentPageColor="inherit"
. |
| colorInheritOther
| Styles applied to the root element of the other page button if otherPageColor="inherit"
. |
| disabled
| Styles applied to the root element of the page button if disabled={true}
. |
| sizeSmall
| Styles applied to the root element of the page button if size="small"
. |
| sizeSmallCurrent
| Styles applied to the root element of the current page button if size="small"
. |
| sizeSmallEllipsis
| Styles applied to the root element of the ellipsis page button if size="small"
. |
| sizeSmallEnd
| Styles applied to the root element of the end page button if size="small"
. |
| sizeSmallStandard
| Styles applied to the root element of the standard page button if size="small"
. |
| sizeLarge
| Styles applied to the root element of the page button if size="large"
. |
| sizeLargeCurrent
| Styles applied to the root element of the current page button if size="large"
. |
| sizeLargeEllipsis
| Styles applied to the root element of the ellipsis page button if size="large"
. |
| sizeLargeEnd
| Styles applied to the root element of the end page button if size="large"
. |
| sizeLargeStandard
| Styles applied to the root element of the standard page button if size="large"
. |
| fullWidth
| Styles applied to the root element of the page button if fullWidth={true}.
|
License
MIT, see LICENSE for details.