UNPKG

shineout

Version:

Shein 前端组件库

76 lines (62 loc) 2.17 kB
import _extends from "@babel/runtime/helpers/extends"; import _inheritsLoose from "@babel/runtime/helpers/inheritsLoose"; import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized"; import _defineProperty from "@babel/runtime/helpers/defineProperty"; import React, { PureComponent } from 'react'; import Pagination from './Pagination'; var DefaultValue = { defaultCurrent: 1, pageSize: 10, total: 0 }; var default_1 = /*#__PURE__*/ function (_PureComponent) { _inheritsLoose(default_1, _PureComponent); function default_1(props) { var _this; _this = _PureComponent.call(this, props) || this; // @ts-ignore _this.state = { current: props.current || props.defaultCurrent, pageSize: props.pageSize }; _this.handleChange = _this.handleChange.bind(_assertThisInitialized(_assertThisInitialized(_this))); return _this; } var _proto = default_1.prototype; _proto.componentDidUpdate = function componentDidUpdate(prevProps) { if (prevProps.current !== this.props.current || prevProps.pageSize !== this.props.pageSize) { // eslint-disable-next-line react/no-did-update-set-state this.setState({ current: this.props.current, pageSize: this.props.pageSize }); } }; _proto.handleChange = function handleChange(current, pageSize) { if (pageSize === void 0) { pageSize = this.state.pageSize; } var sizeChange = pageSize !== this.state.pageSize; this.setState({ current: current, pageSize: pageSize }); if (this.props.onChange) { this.props.onChange(current, pageSize, sizeChange); } }; _proto.render = function render() { var current = this.props.current || this.state.current; if (this.props.total < 0) return null; return React.createElement(Pagination, _extends({}, this.props, { current: current, pageSize: this.state.pageSize, onChange: this.handleChange })); }; return default_1; }(PureComponent); _defineProperty(default_1, "displayName", 'ShineoutPagination'); _defineProperty(default_1, "defaultProps", DefaultValue); export { default_1 as default };