zent
Version:
一套前端设计语言和基于React的实现
64 lines (55 loc) • 1.59 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var Jump = _react2['default'].createClass({
displayName: 'Jump',
getInitialState: function getInitialState() {
return {
pageLabel: this.props.content.trim()
};
},
componentWillReceiveProps: function componentWillReceiveProps(nextProps) {
this.setState({
pageLabel: nextProps.content.trim()
});
},
onKeyUp: function onKeyUp(e) {
if (e.key !== 'Enter') return;
var value = e.target.value.trim();
var pattern = /^\d+$/g;
if (pattern.test(value)) {
if (value <= 0) {
value = 0;
}
if (value > this.props.total) {
value = this.props.total;
}
this.props.onChange(parseInt(value, 10));
}
},
onChange: function onChange(e) {
this.setState({
pageLabel: e.target.value.trim()
});
},
render: function render() {
return _react2['default'].createElement(
'li',
{ className: 'pager pager--jump' },
_react2['default'].createElement('input', { className: 'pager__input', value: this.state.pageLabel, onKeyUp: this.onKeyUp, onChange: this.onChange }),
_react2['default'].createElement(
'span',
{ className: 'pager__suffix' },
'/\u5171',
this.props.total,
'\u9875'
)
);
}
});
exports['default'] = Jump;
module.exports = exports['default'];
;