mirror of
https://github.com/wassname/talk.git
synced 2026-08-16 11:29:31 +08:00
* Table * úsers api * Ádding envs and version * Community Table Added * Ádding redux * Adding loading data state * Community Actions * Adding Inmutable * Fetching commenters * Search commenters * Linting and translations * Ádding Sort * sortBuilder * pagr * request per page, pager and mor * package.json * new Page actiokn * éslint * Changes and cleaner comps * removed console.log
46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
import React, {PropTypes} from 'react';
|
|
import styles from './Pager.css';
|
|
|
|
const Rows = (curr, total, onClickHandler) => Array.from(Array(total)).map((e, i) =>
|
|
<li className={`mdl-button mdl-js-button ${styles.li} ${curr === i ? styles.current : ''}`}
|
|
key={i} onClick={() => onClickHandler(i + 1)}>
|
|
{i + 1}
|
|
</li>
|
|
);
|
|
|
|
const Pager = ({totalPages, page, onNewPageHandler}) => (
|
|
<div className="pager">
|
|
<ul>
|
|
{
|
|
(totalPages > page) ?
|
|
<li
|
|
className={`mdl-button mdl-js-button ${styles.li}`}
|
|
onClick={() => onNewPageHandler(page - 1)}>
|
|
Prev
|
|
</li>
|
|
:
|
|
null
|
|
}
|
|
{Rows(page, totalPages, onNewPageHandler)}
|
|
{
|
|
(page < totalPages) ?
|
|
<li
|
|
className={`mdl-button mdl-js-button ${styles.li}`}
|
|
onClick={() => onNewPageHandler(page + 1)}>
|
|
Next
|
|
</li>
|
|
:
|
|
null
|
|
}
|
|
</ul>
|
|
</div>
|
|
);
|
|
|
|
Pager.propTypes = {
|
|
totalPages: PropTypes.number.isRequired,
|
|
page: PropTypes.number.isRequired,
|
|
};
|
|
|
|
export default Pager;
|
|
|