UNPKG

shineout

Version:

Shein 前端组件库

89 lines (67 loc) 2.68 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose")); var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _react = _interopRequireWildcard(require("react")); var _Pagination = _interopRequireDefault(require("./Pagination")); var DefaultValue = { defaultCurrent: 1, pageSize: 10, total: 0 }; var default_1 = /*#__PURE__*/ function (_PureComponent) { (0, _inheritsLoose2.default)(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((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_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.default.createElement(_Pagination.default, (0, _extends2.default)({}, this.props, { current: current, pageSize: this.state.pageSize, onChange: this.handleChange })); }; return default_1; }(_react.PureComponent); exports.default = default_1; (0, _defineProperty2.default)(default_1, "displayName", 'ShineoutPagination'); (0, _defineProperty2.default)(default_1, "defaultProps", DefaultValue);